哪里错了?

来源:2-11 Java常量的应用

Mr浮云

2016-02-23 23:30

 public static void main(String[] args) {

final char SEX1='男';

    final char SEX2='女';

    System.out.println(SEX1+SEX2);


写回答 关注

4回答

  • binginto
    2016-02-23 23:49:45
    已采纳

    { }是一对,相对应的。

    char是字符型数据,不可以直接相加。若强要相加,由于int是占两个字节,char占一个字节,执行加法过程,结果会变成数字,这是自动转化。可以通过强制转换,将char先变成string,再相加。

    可改为

     public static void main(String[] args) {

        char SEX1='男';

         char SEX2='女';

         String sex_man = (String)SEX1;

         String sex_woman = (String)SEX2;

        System.out.println(sex_man+sex_woman);

    }


    Mr浮云

    非常感谢!

    2016-03-06 23:06:05

    共 1 条回复 >

  • 太極生兩儀
    2016-02-23 23:50:49

    public class HelloWorld {

    public static void main(String[] args) {

           final char SEX1 = '男';

           final char SEX2 = '女';

           System.out.println(Integer.valueOf(SEX1));//Integer.valueOf()的意思是将char类型转化成int类型

           System.out.println(Integer.valueOf(SEX2));

           System.out.println(SEX1+SEX2);

    }

    }

    -------------------------------

    可以试着运行下上面的代码

    首先他们都是基础类型,如果它们之间相加,其中内存小(精度低)的类型会自动转化为内存大的类型(精度高)

    “向上兼容”--即:不同数据类型的数据参与运算,数据类型要强制转换,转换的方向是

    (unsigned)char,(unsigned)short->int->unsigned->long->unsigned long->float->double->longdouble。


    一条小咸鱼

    java一共就8种基本类型好不

    2016-02-24 00:33:33

    共 1 条回复 >

  • 一条小咸鱼
    2016-02-23 23:44:05

    直接给你说解决办法吧:

    一:分开打印

    System.out.println(SEX1);

    System.out.println(SEX2);

    二:添加一个""

    System.out.println(SEX1+""+SEX2);

    如果你想知道为什么,查查api文档的println方法

  • qq_前男友_1
    2016-02-23 23:41:35

    应该使用String来定义此常量

Java入门第一季(IDEA工具)

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1169276 学习 · 18759 问题

查看课程

相似问题