转换primitive主数据类型
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
我们在前面讨论过各种primitive主数据类型的大小,以及小杯子无法装载大杯子内容物的情况:
long y = 42;
int x = y; //不能通过编译
long比int大,且编译器无法确定long的内容是否可以截掉。若要强制编译器装你可以使用cast运算符。
long y = 42;
int x = (int) y;
前置的类型转换会告诉编译器要将y的值裁剪成int的大小来赋值给x,但这个值可能会很诡异:
long y = 40002;
short x = (short) y; //x的值会是-25534!
重点是这样做可以通过编译。假如说你要取浮点数的整数值:
float f = 3.l4f;
int x = (int) f; //x的值会是3
将String转换成int
int guess = Integer.parseInt(stringGuess);
Integer是Java内置的类,它的方法parseInt能够将String所表示的数字转换成实际的数目。可能你会想为什么要转换呢?这是因为两个不同的类型不能直接进行运算和比较,假如你非得直接这么做的话,编译器会告诉你这么做是错误的。
在线练习
{$ activeFileHint $}