java中i 2是什么意思啊((i++)%2在Java中代表的是什么)
大家好,如果您还对java中i 2是什么意思啊不太了解,没有关系,今天就由本站为大家分享java中i 2是什么意思啊的知识,包括(i++)%2在Java中代表的是什么的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
java 中+i+ 是什么意思
后缀自增法(a++):先进行表达式运算,再进行自增运算。
前缀自增法(++a):先进行自增运算,再进行表达式运算。
举例1如下:
publicclassOperation{
publicstaticvoidmain(String[]args){
inta=5;
/**
*intb相当于:5+6+7=18
*执行完a++[运算]后a进行自增,不是执行完此条完整语句后a才自增,而且在同一条语句中a++以后的a都是自增以后的值*/
*/
intb=a+++a+++a;
//a经过两次自增,所以它的值是7
System.out.println("a="+a);
System.out.println("b="+b);
}}
举例2如下:
publicclassOperation{
publicstaticvoidmain(String[]args){
inta=5;
/**
*intb相当于:6+7+7=20
*执行++a[运算]时a先进行自增.而且在同一条语句中++a以后的a都是自增以后的值
*/
intb=++a+++a+a;
//a经过两次自增,所以它的值是7
System.out.println("a="+a);
System.out.println("b="+b);
}
}
java中i++是什么意思
i++是运算后i自增1,++i是运算前i自增1。
第一次循环:i=1
sum=sum+i这个从后往前看,先算后面这个sum+i,这是sum是前面赋值的0,加上i之后,(sum+i)的值是1,再赋给sum。sum=sum+i这个式子等价于sum+=i
然后i自增1,执行完第一次循环之后,i就是2了。
全部执行之后,最后一句输出的,i是5,sum是15
但是事实上最后i还是执行了一个自增的运算,i是6,不满足i<=5的条件,不会进入循环了
(i++)%2在Java中代表的是什么
(i++)%2 i++是先赋值,后自增,也就是说,先计算i%2,之后将该结果赋值给一个变量,不妨设该变量为j,此时j=i%2,所以int j=(i++)%2实际上算出的j=i%2.赋值给j后,i再进行自增。
下面是代码案例:
int i=0;
System.out.println(i++);
System.out.println(i);
第一行输出为0
第二行输出为1
也就是说,i++先把i赋值给一个临时变量temp,然后再进行++自增操作,输出的其实是临时变量temp,而 i本身自增到1
第二次输出也就是 i本身的值。
如上代码,j接收的也是i%2的值,之后i自增,因此取得的j=0.i=1
java中int i=20 1<<i是什么功能
<<,>>都是移位操作符,是作二进制移位的有符号左移和右移。
操作符的前后都要求是整型(byte, short, int, long),左边操作数表示被移位的整数,右边操作数表示移位的位数(注意,整型数的最高位是符号位,0表示正数,1表示负数,有符号移位表示移动时考虑符号,因此移位时有可能会溢出,而且这个移位是循环的,也就是说移到该类型的最高位再移一位就跑到最低位,比如int是32位,1<<32得到的还是1, 1<<31得到int能表示的最大负数)。
计算机内部使用2进制表示数字的,1<<i,就是把二进制整数1左移20位,表示成十进制实际上是2^20,等于1048576。
楼主可以运行以下程序实验:
public class test1{
public static void main(String[] args){
int i=20;
int ii=1<<i;
System.out.println(ii);
System.out.println((int)Math.pow(2, 20));
}
}
关于java中i 2是什么意思啊和(i++)%2在Java中代表的是什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。