1. if(" " == (c=...)) --> 本质上是 if (A == B)的判断。
2. 第一个条件是 " ", 是
字符串类型String
3. 第二个条件是 c=..., 其实是先给C赋值,然后判断 前面的" "是否==C。
问题就出在这里。 c本质上一个char, 就是一个字符。而" "本质上一个字符串String。两者在java中时不同的类型,两者之间不能比较。
按你本意,应该是比较 String中的某个字符是否是空格。那就这样:
for(int i=0; i<str.length; i++){
char c = str.charAt(i);
if(c == ' ') ..... //此处不用" ", 而是用' '。双引号表示 字符串 空格,
单引号表示 字符 空格
}
满意请采纳。