假設我有一個類似「MikeJackson」的字符串,我試圖找出一種方法在兩者之間放置一個空格,使其成爲「邁克傑克遜」。然後對另一個字符串應用相同的方法說「JohnBull」會讓我回到「John Bull」。這是我想出了代碼:在字符串中放置一個空格
public class Test{
public Test(){
}
public void sep(String s){
s = s + " ";
char[] charArray = s.toCharArray();
int l = s.length();
for (int i = 0; i < l; i++){
char p = ' ';
if(Character.isUpperCase(s.charAt(0))){
continue;
}
else if (Character.isUpperCase(s.charAt(i))){
int k = s.indexOf(s.charAt(i));
charArray[l] = charArray[--l];
charArray[k-1] = p;
}
//System.out.println(s.charAt(i));
}
}
public static void main (String args[]){
Test one = new Test();
one.sep("MikeJackson");
}
}
我的想法是一個空間添加到字符串,使「MikeJackson」變成了「邁克·傑克遜」,然後在地方的字符向右移(檢查哪裏我發現一個大寫字母)忽略第一個大寫字母。然後在角色'J'的位置放置一個角色'',但將'J'移至右側。這就是我想用我的方法實現的,但看起來我需要一些指導。如果有人可以幫忙。謝謝。
http://stackoverflow.com/questions/2559759/how-do-i-convert-camelcase-into-human-readable-names-in-java – Prabhakaran