为什么第一种不可以而第二种可以呢??

来源:2-10 Java中的强制类型转换

hedge_hog

2018-09-29 19:16

public class Helloworld{

    public static void main(String[] args){

        final char SEX1='男';

        final char SEX2='女';

        System.out.println(SEX1+SEX2);

    }

}


public class Helloworld{

    public static void main(String[] args){

        final char SEX1='男';

        final char SEX2='女';

        System.out.println(SEX1);

        System.out.println(SEX1);

    }

}


写回答 关注

3回答

  • Darl_长洲芊绵
    2019-03-11 20:31:32
    char a=65;
    char b=66;
    int x=(int)'男';
    int y=(int)'女';
    char max= 30007+22899;
    
    System.out.println(a+b);
    System.out.println(x);
    System.out.println(y);
    System.out.println(a+b);
    System.out.println((char)(30007+22899));
    
    final char SEX1='男';
    final char SEX2='女';
    System.out.println(SEX1+SEX2);

    https://img3.mukewang.com/5c8653320001315508650521.jpg

    奇怪,我怎么可以运算的,试一下上面的代码。

    因为char里的字符是按照顺序排列的(Unicode码表,最大65535,输入 char max1=65536;会提示错误),直接运算时会根据所对应的数字来运算。

  • qq_大海神针_0
    2018-10-02 11:06:04

    加号只能是字符串和变量相连接,不能两个变量连接,只能这样让其连接System.out.println("SEX1="+SEX1+"SEX2="+SEX2);

  • L7丶
    2018-09-29 19:28:27

    两个char类型相加,自动转换成int型,变成了ASCII值相加

    qq_pea...

    能详细解释下吗

    2019-03-06 20:38:08

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

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

1165172 学习 · 17581 问题

查看课程

相似问题