public class test public static void main(String args[]) int x=1,y=1,z=1; if (x--==1&&y++==1z
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了public class test public static void main(String args[]) int x=1,y=1,z=1; if (x--==1&&y++==1z相关的知识,希望对你有一定的参考价值。
求解释,详细的
public class test
public static void main(String args[])
int x=1,y=1,z=1;
if (x--==1&&y++==1||z++==1)
System.out.println("x="+x+",y="+y+",z="+z);
先x--==1&&y++==1
x--==1结果是TRUE x的值是0,
y++==1结果是TRUE y的值是2,
&&这个符号如果左边为FALSE,就不用计算右边的表达式,如果是TRUE,就要计算右边的式子,那么x=0,y=2,x--==1&&y++==1的结果就是TRUE,
||这个式子左边为TRUE那么右边的就不计算,所以z++==1不计算,z还是等于1. 参考技术A x-- == 1 相当于 先执行x == 1 ; 后执行x = x + 1; 因此 x-- == 1 返回true
&& 短路或 如果&&左边错误, 则返回false不判断&&右边
x-- == 1 && y++ == 1返回左右都为true则为true
|| 短路于 如果|| 左边为真, 则返回true不判断|| 右边代码
因为x-- == 1 && y++ == 1返回true则不判断z++ == 1是否为true
因此结果为x=0,y=2,z=1; 参考技术B 这个完全是应试考试的问题,完全没必要拿出来讨论。。。。
实际中如果谁这样写代码那就不是一个好的编程习惯,多用括号,省得自己在那想,这个问题不知道也没关系,考试考这题直接
// 出这题的有真的写过程序没? 参考技术C c static void main(String[] args) int a = 1; a++;
System.out.println(a);
方法要放在类里面,方法的实现要放在方法里面
课程作业2
1.
一个Java类文件中真的只能有一个公有类
public class Test {
public static void main(String[] args) {}
public class InnerClass
{
}
}本段代码有两个公共类,所以错误只能有一个public类。一个java文件可以有多个类和接口在里面,但必须只能且必须有一个public的类或接口,而且那个public的类或接口必须和文件同名
2.把main()方法的返回值由 void 改为 int ,程序能编译通过吗?能运行吗?
不能通过。缺少返回值。
3.
public class Test {
private static int value=-1;
public static void main(String[] args) {
int value=2;
System.out.println(value);
}
}运行结果为2,
4.在int转换为float、double是会有精度损失,long类型转化为double类型会有精度损失,其他情况下没有精度损失。
5.为什么double类型的数值进行运算得不到“数学上精确”的结果?
double类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位上一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。
6.
public class Test1 {
public static void main(String[] args) {
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
}
}执行结果为
原因:第一个后面两个加号起连接作用,第二个前面加号是相加。
以上是关于public class test public static void main(String args[]) int x=1,y=1,z=1; if (x--==1&&y++==1z的主要内容,如果未能解决你的问题,请参考以下文章
Spring错误——Spring 单元测试——Test class should have exactly one public constructor