老师,你好,为什么我的代码运行输出结果,c=后面的小框框图标没有显示,其他的都运行出来了。

来源:4-4 编程练习

slumdog

2019-03-24 12:17:03

public class TypeExchange {

    public static void main(String[] args) {

// 将一个整型字面值67832赋值给char类型变量c

//并将c的值输出

char c=(char)67832;

System.out.println("c="+c);

//定义一个整型变量n,值为65

int n=65;

//定义一个字符型变量c1,赋值为n,并输出c1的值

char c1=(char)n;

System.out.println("c1="+c1);

//定义一个长整型变量l,值为987654321

long l=987654321;

//定义一个整型变量i,赋值为l,并输出i的值

    int i=(int)l;

    System.out.println("i="+i);

    //定义一个float类型变量f,将变量l的值赋值给f,并输出f的值

    float f;

    f=(float)l;

    System.out.println("f="+f);

    //将float的值f,重新赋值给变量l,并输出l的值

    l=(long)f;

    System.out.println("l="+l);

}

}


写回答

1回答

慕雪4557371

2019-03-24

好像是因为,char的范围只有0~65535;

你给的数值超出了,强制转换时丢失了精度,不知道变成了什么数字,然后那个数字刚好对应的字符就是空字符还是啥不显示的字符,所以就看不到,不知道这样理解对不对

1

0 学习 · 11489 问题

查看课程