02 Java自增自减&数据类型转换的6个事项

简介: 注意点1 自增、自减只针对变量,(常量不可用)a++、++a或者a- -、- -a在运算中等同于:a = a+1;或者 a= a-1;如果此处是常量如:3 = 3+1,常量是不允许赋值的。所以自增、自减只针对变量

注意点


1 自增、自减只针对变量,(常量不可用)

a++、++a或者a- -、- -a在运算中等同于:

a = a+1;或者 a= a-1;

如果此处是常量如:

3 = 3+1,常量是不允许赋值的。所以自增、自减只针对变量

2 自增or自减符号在变量前(- -a或++a)

符号在前,先变值再赋值

3 自增or自减符号在变量后(a- -或a++)

符号在后,先赋值再变值


隐式转换和强制转换

数值范围从小到大排序:byte—>short—>int—>long—>float—>double

1 隐式转换(小范围类型数据—>大范围类型数据)

运算过程中的隐式转换(java中数据类型不统一,不能直接做运算,需要先统一)

public void operation(){
    int nub1 = 10;
    double nub2 = 11.0;
    //此处以下为代码分析
    int nub3 =nub1+nub2; //错误示例
    double nub3 =nub1+nub2; //正确示例
    /*
        在计算前会统一数据类型,进行隐式转换由小类型转为大类型数据
    */
}

byte,short、char参与运算,都会直接提升为int

public void operation(){
    short nub1 = 10;
    byte nub2 = 6;
     //此处以下为代码分析
    short nub3 =nub1+nub2; //错误示例
    int nub3 =nub1+nub2; //正确示例
    /*
         byte,short、char参与运算,都会直接提升为int
    */
}


2 强制转换(大类型数据—>小类型数据)

格式:小数据类型 变量 = (小数据类型)大类型变量

如: float a =(float) 15.3

强制转换存在问题,可能会损失精度

IDEA代码修正键:Alt+Enter

3 常量优化机制

在操作数为常数的情况下需要注意的点;解析如下:

byte b = 3+4;

问题:在代码编译过程中会不报错?

答案:这个代码不会。

原因分析:因为两个操作数都是常数,在编译的时候(javac)常数之间会直接先运算,再将结果(此处结果值在byte范围内)赋值给变量b在字节码文件(.class)中byte b = 7;,所以不会报错。

注意: 如果计算结果超出byte范围也会报错


目录
相关文章
|
4月前
|
Java
当Java数据类型遇上“爱情”,会擦出怎样的火花?
当Java数据类型遇上“爱情”,会擦出怎样的火花?
56 1
|
3月前
|
Java
java基础(8)数据类型的分类
Java数据类型分为基本数据类型(8种)和引用数据类型。基本类型包括byte, short, int, long, float, double, boolean, char。每种类型有固定占用空间大小,如int占用4字节。字符编码如ASCII和Unicode用于将文字转换为计算机可识别的二进制形式。
82 2
|
4月前
|
Java 程序员
Java数据类型:为什么程序员都爱它?
Java数据类型:为什么程序员都爱它?
55 1
|
4月前
|
存储 Java
Java数据类型:你究竟有多少面孔?
Java数据类型:你究竟有多少面孔?
40 1
|
4月前
|
存储 算法 Java
我与Java数据类型的那场“风花雪月”
我与Java数据类型的那场“风花雪月”
47 0
|
4月前
|
存储 自然语言处理 Java
Java数据类型:为何它如此“撩人”?
Java数据类型:为何它如此“撩人”?
44 0
|
4月前
|
存储 算法 Java
从菜鸟到大神,Java数据类型是如何改变我的人生的?
从菜鸟到大神,Java数据类型是如何改变我的人生的?
33 0
|
22天前
|
Java
Java基础之数据类型
Java基础之数据类型
18 6
|
23天前
|
Java
在Java中如何将基本数据类型转换为String
在Java中,可使用多种方法将基本数据类型(如int、char等)转换为String:1. 使用String.valueOf()方法;2. 利用+运算符与空字符串连接;3. 对于数字类型,也可使用Integer.toString()等特定类型的方法。这些方法简单高效,适用于不同场景。
47 7
|
1月前
|
存储 缓存 Java
大厂面试必看!Java基本数据类型和包装类的那些坑
本文介绍了Java中的基本数据类型和包装类,包括整数类型、浮点数类型、字符类型和布尔类型。详细讲解了每种类型的特性和应用场景,并探讨了包装类的引入原因、装箱与拆箱机制以及缓存机制。最后总结了面试中常见的相关考点,帮助读者更好地理解和应对面试中的问题。
53 4