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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题看图。public class Person {
        String name;
        int a = 4;
        int sum = 0;
        char c= 65535;
        sum = a+c;  //这段报错了。
}

8 个回复

倒序浏览
我把这段写在主方法就没有报错。
回复 使用道具 举报
是需要把sum强转成char吧。
回复 使用道具 举报
KK要有光 发表于 2015-4-15 10:07
是需要把sum强转成char吧。

   sum = a+c;  我发现这段是定义了一个功能,功能要写在方法当中。
回复 使用道具 举报
你也可以这样写啊:

  1. public class TestFuZhi {
  2.        
  3.         String name;
  4.         int a = 4;
  5.         //int sum = 0;
  6.         char c= 65535;
  7.         int sum = a+c;  //这段报错了。
  8.         /**
  9.          * @param args
  10.          */
  11.         public static void main(String[] args) {
  12.                 // TODO Auto-generated method stub
  13.         }
  14. }
复制代码
回复 使用道具 举报
静心明德 发表于 2015-4-15 13:19
你也可以这样写啊:

字符不是要用单引号引起来吗?
回复 使用道具 举报
蜡笔 发表于 2015-4-15 14:05
字符不是要用单引号引起来吗?

这里是赋值的意思,所以不会报错
回复 使用道具 举报
蜡笔 中级黑马 2015-4-15 14:19:40
8#
静心明德 发表于 2015-4-15 14:11
这里是赋值的意思,所以不会报错

哦哦,是只有在将整数赋值给char类型的时候才可以不写单引号吗?
回复 使用道具 举报
蜡笔 发表于 2015-4-15 14:19
哦哦,是只有在将整数赋值给char类型的时候才可以不写单引号吗?

byte,short,char这三者运算的结果都是int 型,强类型向若类型赋值,都不需要强制转换。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马