我的代碼不轉換前。dog_cat_dog 變成 dogCatDog。我的代碼的輸出是 dogCat_dog。嘗試制作一個不會在第一個“_”處停止的回圈:
public String underscoreToCamel(String textToConvert) {
int index_= textToConvert.indexOf("_",0);
String camelCase="";
String upperCase = "";
String lowerCase="";
for (int i=0; i < textToConvert.length(); i ){
if(i==index_){
upperCase= (textToConvert.charAt(index_ 1) upperCase).toUpperCase();
upperCase= upperCase textToConvert.substring(index_ 2);
}
else{
lowerCase=textToConvert.substring(0,index_);
}
camelCase=lowerCase upperCase;
}
return camelCase;
}
uj5u.com熱心網友回復:
我會做以下事情:制作方法static,它不使用任何類狀態。然后用傳入的值實體化 a StringBuilder,因為那是mutable。然后迭代StringBuilder. 如果當前字符是下劃線,則洗掉當前字符,然后將當前字符替換為其大寫等效字符。喜歡,
public static String underscoreToCamel(String s) {
StringBuilder sb = new StringBuilder(s);
for (int i = 0; i < sb.length(); i ) {
if (sb.charAt(i) == '_') {
sb.deleteCharAt(i);
char ch = Character.toUpperCase(sb.charAt(i));
sb.setCharAt(i, ch);
}
}
return sb.toString();
}
我測驗過
public static void main(String[] args) {
System.out.println(underscoreToCamel("dog_cat_dog"));
}
哪些輸出(根據要求)
dogCatDog
uj5u.com熱心網友回復:
您可以split在“_”上然后重建。
public static String underscoreToCamel(String textToConvert) {
String [] words = textToConvert.split("_");
StringBuilder sb = new StringBuilder(words[0]);
for (int i = 1; i < words.length; i ) {
sb.append(Character.toUpperCase(words[i].charAt(0)));
sb.append(words[i].substring(1));
}
return sb.toString();
}
uj5u.com熱心網友回復:
我認為解決這個問題的一個簡單方法是首先考慮基本情況,然后處理其他情況
public static String underscoreToCamel(String textToConvert){
//Initialize the return value
String toReturn = "";
if (textToConvert == null){
//Base Case 1: null value, so just return an empty string
return "";
} else if (textToConvert.indexOf("_") == -1) {
//Base Case 2: string without underscore, so just return that string
return textToConvert;
} else {
//Primary Case:
//Find index of underscore
int underscore = textToConvert.indexOf("_");
//Append everything before the underscore to the return string
toReturn = textToConvert.substring(0, underscore);
//Append the uppercase of the first letter after the underscore
toReturn = textToConvert.substring(underscore 1, underscore 2).toUpperCase();
//Append the rest of the textToConvert, passing it recursively to this function
toReturn = underscoreToCamel(textToConvert.substring(underscore 2));
}
//Final return value
return toReturn;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/520686.html
標籤:爪哇细绳循环骆驼包
上一篇:在回圈中生成2個亂數,范圍為-5和5,并且必須從最小到最大顯示
下一篇:使用一些過濾器過濾嵌套的物件陣列
