String java请描述if语句中发生的事情

时间:2013-12-16 16:04:29

标签: java if-statement

我已经确定了// Here评论遇到问题的行。我不明白if - 声明发生了什么。

String input = "Hello World!";
String temp = "";
String result = "";

for (int i = 0; i <= input.length(); i++) {
    if (i != input.length() && input.charAt(i) != ' ') {   // Here
        temp = input.charAt(i) + temp;
    } else {
        result = temp + " " + result;
        temp = "";
    }
}

System.out.println("the result is: " + result);

3 个答案:

答案 0 :(得分:0)

检查输入的长度是否与i不同,输入字符不是空格。

答案 1 :(得分:0)

我是柜台。  input.length()表示案例中字符串的长度(12)。  i ++在循环结束时递增1。

for (int i = 0; i <= input.length(); i++) {

i!= input.length()这将检查i是否不等于字符串的长度。  input.charAt(i)!=&#39; &#39;这将返回当前位置的char,让我们说。  i = 0将返回&#34; H&#34;因为它是在charAt(0)找到的。  如果检查i是否不等于字符串的长度并且当前字符不为空(不是空格)。

if (i != input.length() && input.charAt(i) != ' ') {  

如果没有空格和计数器不大于这个长度

temp = input.charAt(i) + temp;
    } else {

如果空白这样做

result = temp + " " + result;
        temp = "";
    }
}

System.out.println("the result is: " + result);

答案 2 :(得分:0)

if (i != input.length() && input.charAt(i) != ' ') 

说两件事必须是真的,并用短截码进行评估。首先,它检查i是否不等于输入的长度。 (i != input.length())IF并且只有在第一部分为真时才会评估第二部分。这是Shortcircut(&&运算符)评估的本质。第二部分说索引i处的字符不是空格字符。 (input.charAt(i) != ' ')如果这两个都是真的,那么表达式被评估为真,并且'then'被执行。如果第一个为假(短路),或者第一个为真且第二个为真,则执行else。

相关问题