java中i 1是什么意思(java中i++是什么意思)
其实java中i 1是什么意思的问题并不复杂,但是又很多的朋友都不太了解java中i++是什么意思,因此呢,今天小编就来为大家分享java中i 1是什么意思的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
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的条件,不会进入循环了
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 中 int i=i+1,和int i+=1,的区别
据我所知是没有区别的,下面的只是上面的一种简写方式而已。如果i是short类型的是有区别的。
short
i
=
1;
//
错误,i+1运算结果是int型,将int类型值赋值给short类型变量需要显式的强制类型转换
//
i=
i+
1;
//
正确,因为没有赋值过程,可以理解为i++,不需要类型的转换,或者也可以说是自动类型的转换
i+=
1;
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!