当前位置:IT认证>软件水平

问题:[选择题]

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


A.i=x;
B.x=u+y;
C.x=23.4+j*y;
D.v=(inx;

参考答案: D

  参考解析

该题考查的是变量的赋值。赋值是用等号运算符(=)进行的。它的意思是“取得右边的值,把它复制到左边”。右边的值可以是任何常数、变量或者表达式,只要能产生一个值就行。但左边的值必须是一个明确的、已命名的变量。也就是说,它必须有一个物理性的空间来保存右边的值。举个例子来说,可将一个常数赋给一个变量(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型,所以是正确的。

微信端