/*
运算符【剩下的运算符】
* 赋值运算符
* 字符串连接运算符
* 三目运算符/三元运算符/条件运算符
关于java中的赋值类运算符
* 基本的赋值运算符
=
* 拓展的赋值运算符
+=
-=
/=
*=
%=
1、赋值类运算符优先级:先执行等号右边的表达式,再将结果赋值给左边的变量
2、注意以下代码:
byte i = 5;
i += 5; // 等同于 i = (byte)(i + 5);
int j = 6;
j += 6; // 等同于 j = (int)(j + 6);
long x = 10L;
int y = 20;
y += x; //等同于 y = (int)(x + y);
3、拓展类赋值运算符不改变运算结果的类型,无论怎么追加或追减都会是原先声明的类型。
*/
public class OperatorTest03{
public static void main(String[] args){
//基本的赋值运算符
int i = 10;
System.out.println(i);//10
i = i + 5;
System.out.println(i);//15
//扩展的赋值运算符
i += 5;//等同于:i = i+5;【+= 运算符可以翻译为“追加/累加”】
System.out.println(i);
i -= 5;//等同于:i = i - 5;
System.out.println(i);//15
i *= 2;//等同于:i = i * 2;
System.out.println(i);//30
i /= 4;//等同于: i = i / 4;
System.out.println(i);//7
i %= 2;//等同于:i = i % 2;
System.out.println(i);//1
//-----------------------------------------
//10没有超出byte取值范围,可以直接赋值
byte b = 10;
//编译报错,为什么?
//编译器只检查语法,不运行程序,编译器发现b+5是int类型,b变量是byte
//大容量转小容量需要加强制类型转换符,所以以下程序报错
//b = b + 5;
//纠正错误
b = (byte)(b + 5);
System.out.println(b);
//编译通过
byte x = 10;
x += 5;//等同于x = (byte)(x + 5),其实并不等同于 x = x + 5;
System.out.println(x);
byte z = 0;
z += 128; //等同于 z = (byte)(z + 128);
System.out.println(z);//-128【损失精度】
}
}
Java 运算符 Part03 赋值类运算符
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1.0 为什么要进行Java常识性基础补充? 之前学习Java语言,学得很多很杂,而且是很多不同的方面插入讲解的,...
- Java中的赋值运算符 赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的...
- 1. 赋值运算符 "=" Swift赋值语句不可作为条件判断语句 2.基础运算符 "+ - * / %" 3.单目...
- 一元运算符: 一元运算符,只需要一个操作数 + 正号 - 正号不会对数字产生任何影响 - 负号 - 负号可以对数字...
- 一元运算符,只需要一个操作数 + 正号 - 正号不会对数字产生任何影响 - 负号 - 负号可以对数字进行符号的取反...