老师帮忙看下哪里出错了

来源:4-4 编程练习

凉凉夏日

2020-01-12 11:28:30

public class TypeExchange {
    public static void main(String[] args) {
		// 将一个整型字面值67832赋值给char类型变量c
		//并将c的值输出
		char c=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=987654321l;
		//定义一个整型变量i,赋值为l,并输出i的值
	    int i=(int)l;
	    System.out.println("i="+i);
	    //定义一个float类型变量f,将变量l的值赋值给f,并输出f的值
	    float f=l;
	    System.out.println("f="+f);
	    //将float的值f,重新赋值给变量l,并输出l的值
	    l=f;
	    System.out.println("l="+l);
	}
}


写回答

1回答

好帮手慕小尤

2020-01-12

同学你好,1. char的范围是0-65535 总共65536个字符,67832超出了这个范围,则需要强制类型转换(char c=(char)67832;)。修改后代码参考2:

2. float不能自动转换为long类型,因为float类型表示范围大于long类型,把float类型赋值为long类型,所以需要进行强制类型的转换( l=(long)f;)。修改后代码如下:

http://img.mukewang.com/climg/5e1ab61e094249c505650435.jpg

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0

0 学习 · 11489 问题

查看课程