2013-02-19 25 views
0
case 1: 
if (text1Input.charAt(i+1) <= text1Input.length() && 
    Character.isUpperCase(text1Input.charAt(i+1))) 
{ 
    a += 60; 
    b += 100; 
} 
else 
{ 
    a += 55; 
    b += 60; 
} 
break; 

這行代碼是否有意義?它不工作如何我想要它,並不能找出問題。代碼旨在檢查字符串中的下一個字符。如果該字符存在(意思還沒有達到字符串的末尾),並且該字符是大寫字母,則它使用這些座標。否則,它使用其他的。我的問題是它總是使用後者而不管大小寫。爲什麼`text.charAt(i + 1)<= text.length()`不起作用?

回答

4

text1Input.charAt(i+1) <= text1Input.length() 

沒有意義。什麼會更有意義,是

i+1 < text1Input.length() 

你在做什麼,現在比較的text1Inputi+1個字符到它的長度,這是荒謬的ASCII值。 (你也應該使用i+1 < text1Input.length(),而不是<=。)

+0

是啊的。謝謝。 – 2013-02-19 20:24:03

7

你是一個性格比較到一個位置,這可能不是您所希望的東西,所以你可能會使用i+1代替x.charAt(i+1)

相關問題