A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

今天学习多线程时,对于以下代码中“this.name = name + count;”不是特别明白,我的意识中“+”是相连接一般发生在输出语句中,为什么此处也是相连接?另外,对于“+”的使用,有没有总结性的用法?它一般都使用在什么地方?什么时候是运算符号?什么时候是连接符?
  1. class Resource
  2. {
  3.         private String name;
  4.         private int count = 1;
  5.        
  6.         //1,提供设置的方法。
  7.         public synchronized void set(String name)
  8.         {
  9.                 //给成员变量赋值并加上编号。
  10.                 this.name = name + count;
  11.                 //编号自增。
  12.                 count++;
  13.                 //打印生产了哪个商品。
  14.                 System.out.println(Thread.currentThread().getName()+"......生产者...."+this.name);
  15.         }
  16.         public synchronized void out()
  17.         {
  18.                 System.out.println(Thread.currentThread().getName()+"....消费者...."+this.name);
  19.         }
  20. }
复制代码

5 个回复

倒序浏览
没有人给解答一下吗?
回复 使用道具 举报
+在字符串中可以当做连接字符来用  比如"f"+"fds"  的到的结果是ffds  .字符串和数字相加的时候也是当连接字符用的.但是char类型的相加的话不是 虚拟机会把char类型自动转换为int在进行相加
回复 使用道具 举报
字符串有个特性,字符串和任何数据使用+链接的时候都会产生一个新的字符串,不会发生其他的运算,此处+只是起到一个连接的作用。其他的地方都是当做加法运算符使用的,连接中存在byte、short、char都会转成int的参加运算。也就是说有字符串的时候就是连接符,其他的就是加法运算。
回复 使用道具 举报
赵旗 发表于 2015-5-14 22:14
+在字符串中可以当做连接字符来用  比如"f"+"fds"  的到的结果是ffds  .字符串和数字相加的时候也是当连接 ...

谢谢师兄!
回复 使用道具 举报
javabest 发表于 2015-5-14 23:40
字符串有个特性,字符串和任何数据使用+链接的时候都会产生一个新的字符串,不会发生其他的运算,此处+只是 ...

感谢回复!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马