public class E1
{public static void main(String arg[])
{char x='你',y='e',z='吃';
if(x>'A')    //‘a’是什么意思呀,
{y='爱';
z='情';
}
else
y='我';
z='她';
System.out.println(" "+x+y+z);  //为什么要加“ ”这个呀,我去掉双引号都出来都是数字这又是什么原因呀,为什么打印结果是“你爱她”呀,怎么来的,给解释一下好吗?不明白呀
}
}

解决方案 »

  1.   

    加引号是为了转为String,否则char相加就是int型的了
      

  2.   

    else{ 
    y='我'; 
    z='她'; 
    }
    这里少了个{},如果没有{},"z='她';"总会在if...else...语句后执行
      

  3.   

    问题一:字符用<,>,=运算符的话都是通过ASCII码来比较的```
    问题二:如楼上所说的那样```如果前面用了""然后再用+号运算符的话,它会自动把后面的串起来(选调用它的toString()),如果没,即按该字符所相对应的ASCII码的值来相加了,最后再调用toString()输出,所以为数字```原理这样,但对于中文的ASCII码不懂```
      

  4.   

    为了输出字符,否则输出的则是ASCII码对应的int 的数字
      

  5.   

    char byte int 都是整数类型“” + char + char转化为字符串
    char + char 就是int了