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范围也会报错


目录
相关文章
|
1天前
|
存储 Java
Java中的基本数据类型有哪些?它们的大小和取值范围是多少?
Java基础数据类型:4种整型(byte[-128,127],short[-32,768,32,767]),2种浮点(float,double),1种字符(char,Unicode),1种布尔(true,false)。
20 0
|
1天前
|
存储 Java
【JAVA基础篇教学】第一篇:Java基础数据类型
【JAVA基础篇教学】第一篇:Java基础数据类型
|
1天前
|
小程序 Java 容器
03|Java基础语法:讲解标识符、关键字、变量、数据类型、运算符、控制语句(条件分支、循环)
03|Java基础语法:讲解标识符、关键字、变量、数据类型、运算符、控制语句(条件分支、循环)
9 0
|
1天前
|
Java
深入浅出Java基础语法:标识符、关键字、变量、数据类型、运算符与控制语句
深入浅出Java基础语法:标识符、关键字、变量、数据类型、运算符与控制语句
7 0
|
1天前
|
存储 Java 定位技术
轻松理解Java中的数据类型和变量
轻松理解Java中的数据类型和变量
8 0
|
1天前
|
存储 安全 Java
Java一分钟之Java数据类型概览:基本类型与引用类型
【5月更文挑战第7天】本文概述了Java中的基本和引用数据类型,强调了理解它们对高效编程的重要性。基本类型包括数值、布尔和字符类型,而引用类型涉及类、接口、数组等。注意基本类型的精度损失和溢出问题,以及引用类型的空指针异常和内存泄漏。通过明确类型范围、使用包装类、空值检查和及时释放资源来避免这些问题。代码示例展示了基本类型和引用类型的使用。理解这些核心概念有助于编写更健壮的Java代码。
16 1
|
1天前
|
存储 Java 程序员
Java中的基本数据类型有哪些?
【4月更文挑战第30天】Java中的基本数据类型有哪些?
16 1
|
1天前
|
Java
【Java探索之旅】数据类型与变量 字面常量 整型变量
【Java探索之旅】数据类型与变量 字面常量 整型变量
23 0
|
1天前
|
存储 Java C语言
【Java探索之旅】数据类型与变量 浮点型,字符型,布尔型,字符串型
【Java探索之旅】数据类型与变量 浮点型,字符型,布尔型,字符串型
20 0
|
1天前
|
存储 Java 开发者
JAVA基本数据类型
JAVA基本数据类型
19 1