Java基础赋值运算符

简介: Java基础赋值运算符

关于java中的赋值运算

赋值运算符包括两种:


基本的赋值运算符:


=


扩展的赋值运算符

+=

-=

*=

%=


1.赋值类的运算符优先级:先执行等号右边的表达式,将执行结果赋值给左边的变量。


2.注意以下代码:


byte i = 10;
 i += 5;等同于: i = (byte)(i + 5);
 int k = 10;
 k += 5;等同于:k = (int)(k + 5);
 long x = 10L;
 int y = 20;
 y += x;等同于:y = (int)(y + x);


3.重要结论:扩展类的赋值运算符不改变运算结果类型,假设最初这个变量的类型是

byte类型,无论怎么进行追加或追减,最终该变量的数据类型还是byte类型。


public class OperatorTest04{
  public static void main(String[] args){
    //基本的赋值运算符
    int i = 10;
    System.out.println(i);//10
    //扩展的赋值运算符
    i += 5;
    System.out.println(i);//15
    i -= 5;
    System.out.println(i);//10
    /*
    //编译报错
    //编译器只检查语法,不运行程序,编译器发现x+5的类型是int类型,b变量的数据类型是byte
    //大容量向小容量转换需要加强制类型转换符,所以以下程序编译报错。
    byte x = 10;
    x = x + 5;
    System.out.println(x);
    */
    //纠正错误
    byte b = 10;
    b = (byte)(b + 5);
    System.out.println(b);//15
    byte x = 10;
    x += 5;//等同于: x = (byte)(x + 5),其实并不等同于:x = x + 5
    System.out.println(x);//15
    byte z = 0;
    z += 128;//等同于:z = (byte)(z + 128);
    System.out.println(z);//-128[损失精度]
    z += 10000;//等同于:z = (byte)(z + 10000)
    System.out.println(z);/*结果为-112
    详解:byte类型的取值范围(-128,127)|(256);所以10000已经超出范围
          10000%256=16(39),余数是16,循环39次,-128+127=256,所以256
        为一次循环,经历39次循环后,用byte的最小值-128加16即-128+16=-112。
    */
  }
}
目录
打赏
0
0
0
0
4
分享
相关文章
|
20天前
|
《从头开始学java,一天一个知识点》之:运算符与表达式:算术、比较和逻辑运算
**你是否也经历过这些崩溃瞬间?** - 看了三天教程,连`i++`和`++i`的区别都说不清 - 面试时被追问"`a==b`和`equals()`的区别",大脑突然空白 - 写出的代码总是莫名报NPE,却不知道问题出在哪个运算符 这个系列为你打造Java「速效救心丸」,每天1分钟,地铁通勤、午休间隙即可完成学习。直击高频考点和实际开发中的「坑位」,拒绝冗长概念,每篇都有可运行的代码示例。明日预告:《控制流程:if-else条件语句实战》。
30 6
|
21天前
|
课时15:Java运算符(基础数学运算符)
课时15介绍了Java中的基础数学运算符,涵盖加、减、乘、除及自增自减运算。强调了运算符的优先级和使用括号的重要性,并通过范例展示了四则运算与自增自减的具体应用。提醒编写代码时应保持简洁,避免复杂的表达式,确保代码易读性和可维护性。
|
21天前
|
课时17:Java运算符(关系运算符)
范例:进行关系判断。如果要进行关系运算的操作可使用:>、<、>=、<=、!=(不等于)、==。所有的关系运算符判断完成的数据返回结果都是布尔类型(boolean)。只要使用关系运算符进行逻辑判断,最终的结果就是布尔型,只有true和false两种结果,而且能和if语句结合使用。
|
21天前
|
课时16:Java运算符(三目运算符)
范例:将两个变量值在大的内容赋值给新变量。三目是一种赋值运算,它指的是根据条件来进行判断。(根据判断的结果来决定赋值内容)对于三目运算的基本使用语法如下: 数据类型 变量 = 布尔表达式 ?条件满足时赋值内容:条件不满足时:赋值内容
课时19:Java运算符(位运算符)
课时19介绍Java中的位运算符,涵盖进制转换、位与、位或及移位操作。重点讲解了二进制与其他进制的转换方法,通过具体范例演示了位与和位或运算的过程,并展示了八进制和十六进制的处理方式。此外,还解释了逻辑运算符(&&、||)与位运算符(&、|)的区别及其应用场景,特别是位运算在加密中的应用。
|
21天前
|
课时18:Java运算符(逻辑运算符)
课时18介绍了Java中的逻辑运算符(与、或、非)。通过范例详细讲解了非操作的使用,展示了如何正确应用逻辑非(!)。接着分别探讨了与操作(& 和 &&)及或操作(| 和 ||),强调了短路运算符(&& 和 ||)在性能和安全性上的优势。课程通过具体代码示例演示了不同逻辑运算符的效果及其应用场景。
|
6月前
|
Java运算符
Java运算符
75 12
|
3月前
|
java中的常见运算符的计算方式
本文介绍了计算机中二进制数的原码、反码和补码的概念及其转换方式。原码是符号位加真值的绝对值;反码中正数不变,负数其余位取反;补码在反码基础上加1。文章还详细解释了Java中的常见运算符(如按位与、或、异或、移位等)如何基于二进制进行计算,并探讨了使用补码的原因,包括统一符号位处理和扩展表示范围。通过具体代码示例帮助理解这些概念。
java中的常见运算符的计算方式
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
157 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
🌟Java 零基础 | 详解 单目运算符
【10月更文挑战第14天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
124 7