Here you can find the source of camelString(String str, boolean firstCharacterUppercase)
public static String camelString(String str, boolean firstCharacterUppercase)
//package com.java2s; /**/*from ww w . j ava 2 s . c om*/ * Copyright 2013 ?????? * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ public class Main { public static final String EMPTY = ""; public static final char[] WORD_SEPARATORS = { '_', '-', '@', '$', '#', ' ' }; public static String camelString(String str, boolean firstCharacterUppercase) { if (str == null) { return null; } StringBuffer sb = new StringBuffer(); boolean nextUpperCase = false; for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); if (isWordSeparator(c)) { if (sb.length() > 0) { nextUpperCase = true; } } else { if (nextUpperCase) { sb.append(Character.toUpperCase(c)); nextUpperCase = false; } else { sb.append(Character.toLowerCase(c)); } } } if (firstCharacterUppercase) { sb.setCharAt(0, Character.toUpperCase(sb.charAt(0))); } return sb.toString(); } public static boolean isWordSeparator(char c) { for (int i = 0; i < WORD_SEPARATORS.length; i++) { if (WORD_SEPARATORS[i] == c) { return true; } } return false; } public static boolean isWordSeparator(char c, char[] wordSeparators) { if (wordSeparators == null) { return false; } for (int i = 0; i < wordSeparators.length; i++) { if (wordSeparators[i] == c) { return true; } } return false; } public static String toUpperCase(String str) { if (str == null) { return null; } return str.toUpperCase(); } public static String toUpperCase(String str, int beginIndex, int endIndex) { if (str == null) { return null; } StringBuilder sb = new StringBuilder(); if (beginIndex < 0) { beginIndex = 0; } if (endIndex > str.length()) { endIndex = str.length(); } if (beginIndex > 0) { sb.append(str.substring(0, beginIndex)); } sb.append(str.substring(beginIndex, endIndex).toUpperCase()); if (endIndex < str.length()) { sb.append(str.substring(endIndex)); } return sb.toString(); } public static String toLowerCase(String str) { if (str == null) { return null; } return str.toLowerCase(); } public static String toLowerCase(String str, int beginIndex, int endIndex) { if (str == null) { return null; } StringBuilder sb = new StringBuilder(); if (beginIndex < 0) { beginIndex = 0; } if (endIndex > str.length()) { endIndex = str.length(); } if (beginIndex > 0) { sb.append(str.substring(0, beginIndex)); } sb.append(str.substring(beginIndex, endIndex).toLowerCase()); if (endIndex < str.length()) { sb.append(str.substring(endIndex)); } return sb.toString(); } public static String substring(String str, int beginIndex) { if (str == null) { return null; } if (beginIndex < 0) { return EMPTY; } if (beginIndex > str.length()) { return EMPTY; } return str.substring(beginIndex); } public static String substring(String str, int beginIndex, int endIndex) { if (str == null) { return null; } if (beginIndex < 0 || endIndex < 0) { return EMPTY; } if (endIndex > str.length()) { endIndex = str.length(); } if (beginIndex > endIndex || beginIndex > str.length()) { return EMPTY; } return str.substring(beginIndex, endIndex); } }