假设有下列声明语句: int i,j; float x,y; double u,v; 下面______个赋值是合法的? ( )

admin2010-02-22  20

问题 假设有下列声明语句:    int i,j;    float x,y;    double u,v;    下面______个赋值是合法的?    (    )

选项 A、i=x;
B、x=u+y;
C、x=23.4+j*y;
D、v=(int)x;

答案8

解析 该题考查的是变量的赋值。赋值是用等号运算符(=)进行的。它的意思是“取得右边的值,把它复制到左边”。右边的值可以是任何常数、变量或者表达式,只要能产生一个值就行。但左边的值必须是一个明确的、已命名的变量。也就是说,它必须有一个物理性的空间来保存右边的值。举个例子来说,可将一个常数赋给一个变量(A=4;),但不可将任何东西赋给一个常数(比如不能4=A) 。Java还允许将一种类型的变量赋给另一个变量,同时不进行显示造型同样可以进行某些特定的赋值转换,允许的转换包括:byte→short→int→ long→float→double 和 char→int。而选项A中 float型不能赋给int型,选项B中double型不能赋给float型,选项C中经过转变后也是把double型赋给float型了,选项D中使用了强制转换,把x强制转换成int型,所以是正确的。
转载请注明原文地址:https://jikaoti.com/ti/ZeH0FFFM
0

最新回复(0)