將一個字符串的最後一個字母變成大寫

功能:將一個字符串的最後一個字母變成大寫,變態!
問題1
第一次實現的時候將判斷寫成如下形式。。。然後結果顯示總多一個最後一個字母的小寫,尼瑪。。不解,原來i != schar.length-2i還可以等於schar.length-1。切記啊,判斷條件要考慮清楚。

if(i != schar.length-2)
			{
				result1 += schar[i];
			}

將判斷條件改成i <= schar.length-2,問題1解決。
問題2
將最後一個字符變成大寫字母的時候,無法直接賦值String result2 = schar[i].toUpperCase();,也無法將這時候得到的ss,這是爲啥呢?變量的作用域導致的,需要補充一下。

if(i == schar.length-1) {
				String ss = schar[i].toUpperCase();
				result2=ss;
			}

整體實現如下:

public class LengendaryupperFirstTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String s = "king";;
		String schar[] = s.split("");
		String result1 ="";
		String result2 ="";
		for(int i =0;i<schar.length;i++) {
			if(i <= schar.length-2)
			{
				result1 += schar[i];
			}
			if(i == schar.length-1) {
				String ss = schar[i].toUpperCase();
				result2=ss;
			}
		}
		String result = result1+result2;
		System.out.println(result);
	}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章