int a = 5;
int b = 6;
System.out.println(a+b+"str");一眼告诉我答案,直接贴上。
int b = 6;
System.out.println(a+b+"str");一眼告诉我答案,直接贴上。
解决方案 »
- java读csv的问题
- socket及RTP网络部署问题,服务在外网有固定IP,客户端在局域网内,这样可通讯吗?
- 关于java实现Ping程序的问题
- 使用org.apache.commons.net.ftp.FTPClient storeFile(String,ImputStream) 被锁的问题
- 建立文件时,如何指定文件编码?
- hashtable如何排序
- 我用ZIP包成功压缩成了RAR文件实现了我的需求,可是RAR文件解压却不行,请教!!!
- 一个静态变量初始化的顺序问题:
- swing下面,JTextField无法获取焦点,输入不了东西
- 帮忙看下这两段代码有什么问题,关于线程同步问题
- 有关《java核心开发技术从入门到精通》的问题:atan是什么意思啊...
- 对象强制类型转换的问题
int b = 6;
System.out.println("str"+a+b);更有意思。
str56
a+b (int + int)
11 + str (int + string)
我觉得应该String类型与其它类型运算,考虑前后顺序吧。
int b = 6;
System.out.println(a+b+"str");这里的a+b+"str" 应该是(int+int)+string
int a = 5;
int b = 6;
System.out.println("str"+a+b);这里的"str"+a+b应该是开头是字符串就把加号当连接符,相当于(string+string+string)
我是这么理解的。
我再举一个例子:
int a = 5;
int b = 6;
System.out.println("str"+(a+b));
这个和第二个就明显有区别了。不知道这是不是楼主要的结果,这只是我个人的见解,呵呵。
a + b + "str"编译器会先计算a + b,然后发现下一个操作数“str”为String类型的,就与他进行连接;同理,对于 "str" + a + b ,从左到右,编译器会先进行连接得到一个String类型的“str5”,再与b进行连接。
从左到右就算:11str
什么玩意的表达式是从右向左的,我就记成了System.out.println();里边的内容了。