[ 
https://issues.apache.org/jira/browse/TEXT-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18019858#comment-18019858
 ] 

Kushal Dixit commented on TEXT-238:
-----------------------------------

Yes, agreed.

Using {{toLowerCamelCase}} / {{toUpperCamelCase}} seems the safest way to avoid 
confusion.

> Overload CaseUtils.toCamelCase to default capitalizeFirstLetter=false
> ---------------------------------------------------------------------
>
>                 Key: TEXT-238
>                 URL: https://issues.apache.org/jira/browse/TEXT-238
>             Project: Commons Text
>          Issue Type: Improvement
>    Affects Versions: 1.14.0
>            Reporter: Kushal Dixit
>            Priority: Minor
>
> Right now, {{CaseUtils.toCamelCase(String, boolean, char...)}} always 
> requires specifying the {{capitalizeFirstLetter}} flag.
> In most real-world cases, users just want to convert a string to camelCase 
> with the first letter lowercased by default, as that is basically what 
> camelCase means originally.
> *Proposal:* add a new overload:
> {code:java}
> public static String toCamelCase(String str, char... delimiters) { ... }
> {code}
>  * Since {{delimiters}} is already a varargs parameter, an overload without 
> delimiters is not needed; callers can just omit it.
>  * This overload will also be beneficial for *method references* in JDK 8+, 
> making code like {{list.stream().map(CaseUtils::toCamelCase)}} cleaner.
> *Examples:*
> {code:java}
> CaseUtils.toCamelCase("java-utils", '-');        // javaUtils
> CaseUtils.toCamelCase("convert this string");    // convertThisString
> CaseUtils.toCamelCase("hello_world", '_')        // helloWorld{code}
> *Why it’s useful:*
> Most callers just want the first letter lowercased. Requiring {{false}} every 
> time is unnecessary boilerplate. This overload simplifies the API for the 
> common case while keeping the existing method unchanged for backward 
> compatibility.
> *Note:* Looking for feedback and approval. If this makes sense, I will raise 
> a PR with proper documentation and unit tests.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to