黑马程序员技术交流社区

标题: 运算表达式能写在方法的外面吗 [打印本页]

作者: 弯曲/mg抛物☀    时间: 2015-4-15 10:01
标题: 运算表达式能写在方法的外面吗
如题看图。public class Person {
        String name;
        int a = 4;
        int sum = 0;
        char c= 65535;
        sum = a+c;  //这段报错了。
}
作者: 弯曲/mg抛物☀    时间: 2015-4-15 10:03
我把这段写在主方法就没有报错。
作者: KK要有光    时间: 2015-4-15 10:07
是需要把sum强转成char吧。
作者: 弯曲/mg抛物☀    时间: 2015-4-15 10:37
KK要有光 发表于 2015-4-15 10:07
是需要把sum强转成char吧。

   sum = a+c;  我发现这段是定义了一个功能,功能要写在方法当中。
作者: 静心明德    时间: 2015-4-15 13:19
你也可以这样写啊:

  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 14:05
静心明德 发表于 2015-4-15 13:19
你也可以这样写啊:

字符不是要用单引号引起来吗?
作者: 静心明德    时间: 2015-4-15 14:11
蜡笔 发表于 2015-4-15 14:05
字符不是要用单引号引起来吗?

这里是赋值的意思,所以不会报错
作者: 蜡笔    时间: 2015-4-15 14:19
静心明德 发表于 2015-4-15 14:11
这里是赋值的意思,所以不会报错

哦哦,是只有在将整数赋值给char类型的时候才可以不写单引号吗?
作者: 静心明德    时间: 2015-4-15 14:22
蜡笔 发表于 2015-4-15 14:19
哦哦,是只有在将整数赋值给char类型的时候才可以不写单引号吗?

byte,short,char这三者运算的结果都是int 型,强类型向若类型赋值,都不需要强制转换。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2