简自动类型提升,精度损失类型强制转换,常用转义字符,简单帮你回顾Java基本数据类型整形浮点型字符型布尔型Boolean及其运算规则

简介: 简自动类型提升,精度损失类型强制转换,常用转义字符,简单帮你回顾Java基本数据类型整形浮点型字符型布尔型Boolean及其运算规则

文章目录


整形

浮点型

字符型

布尔型boolean

自动类型提升

强制类型转换

注意


整形


06b4fa12b50c4ee2885450a865b03d02.png


bit是计算机中的最小存储单位。

byte是计算机中的基本存储单元。

1MB=1024KB——1KB=1024B(byte)


public class JavaTest {
    public static void main(String[] args) {
        byte b1 = 18;
        byte b2 = -128;
        //b2 = 128;超出范围,编译失败。
        //声明long类型的变量,必须以L(l)结尾。
        short s1 = 128;
        int i1 = 1234;
        long l1 = 999999L;
    }
}


浮点型


2a2d07fa815a431a963c592f3c2a8447.png


float尾数可以精确到7位有效数字。

double是float的两倍,通常用它。


public class JavaTest {
    public static void main(String[] args) {
        double d1 = 12.4;
        //声明float型需要在结尾加上F(f)。
        float f1 = 12.4f;
    }
}


字符型


char(1字符=2字节)


public class JavaTest {
    public static void main(String[] args) {
        //定义char型变量,用一对英文单引号('')包住一个字符。
        char c1 = 'a';
        //char c2 = 'ab';编译不通过。
        char c3 = '中';
        char c4 = '1';
        //也可以使用转义字符
        char c5 = '\n';
        //也可以使用Unicode值
        char c6 = '\u0043';
    }
}


常用转义字符


image.png


布尔型boolean


boolean bl1 = true;
boolean bl2 = false;


自动类型提升


当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型,需要用容量大的数据类型变量来接收。(容量大小是说表示数的范围大小,而不是所占存储空间大小,比如long比float容量小)

byte,char,short–>int–>long–>float–>double

特别的,当byte,char,short数据类型的变量之间或自己做运算时,结果为用int型接收。


强制类型转换


格式:(目标类型)xxx

可能导致精度损失

自动类型提升顺序反过来


double d1 = 12.9;
//精度损失1
int i1 = (int)d1; //截断操作,结果为12
//没有精度损失
long l1 = 123;
short s1 = (short)l1; //结果为123
//精度损失2
int i2 = 128;
byte b1 = (byte)i2; //结果为-128(byte(-128~127)最大为127,可以简单理解为超出就循环)


注意


①整形默认是int,浮点型默认是double。

②如果long型声明时,数值结尾不加L(l)(即默认为int型),若数值不超过int范围,则编译通过,若超过int范围,则编译失败。(long<–int,long可以放得下int,因为存储空间比较大)

③如果float型声明时,数值结尾不加F(f)(即默认为double型),编译失败。(float<–double,float放不下double)

④ string类型是引用数据类型,它可以和所有基本数据类型之间做连接(+)运算,结果均为string类型。


相关文章
|
22天前
|
存储 传感器 缓存
java变量与数据类型:整型、浮点型与字符类型
### Java数据类型全景表简介 本文详细介绍了Java的基本数据类型和引用数据类型,涵盖每种类型的存储空间、默认值、取值范围及使用场景。特别强调了`byte`、`int`、`long`、`float`、`double`等基本类型在不同应用场景中的选择与优化,如文件流处理、金融计算等。引用数据类型部分则解析了`String`、数组、类对象、接口和枚举的内存分配机制。
52 15
|
22天前
|
Java
课时14:Java数据类型划分(初见String类)
课时14介绍Java数据类型,重点初见String类。通过三个范例讲解:观察String型变量、&quot;+&quot;操作符的使用问题及转义字符的应用。String不是基本数据类型而是引用类型,但使用方式类似基本类型。课程涵盖字符串连接、数学运算与字符串混合使用时的注意事项以及常用转义字符的用法。
|
22天前
|
Java
课时13:Java数据类型划分(布尔型)
观察布尔型的操作。布尔是一位数学家的名字,这个布尔发明了两个单词:True、False(一个表示真一个表示假)。一般布尔类型都只表示逻辑的计算结果。
|
21天前
|
SQL IDE 算法
《从头开始学java,一天一个知识点》之:运算符与表达式:算术、比较和逻辑运算
**你是否也经历过这些崩溃瞬间?** - 看了三天教程,连`i++`和`++i`的区别都说不清 - 面试时被追问&quot;`a==b`和`equals()`的区别&quot;,大脑突然空白 - 写出的代码总是莫名报NPE,却不知道问题出在哪个运算符 这个系列为你打造Java「速效救心丸」,每天1分钟,地铁通勤、午休间隙即可完成学习。直击高频考点和实际开发中的「坑位」,拒绝冗长概念,每篇都有可运行的代码示例。明日预告:《控制流程:if-else条件语句实战》。
30 6
|
6天前
|
存储 Java 编译器
Java泛型类型擦除以及类型擦除带来的问题
本文主要讲解Java中的泛型擦除机制及其引发的问题与解决方法。泛型擦除是指编译期间,Java会将所有泛型信息替换为原始类型,并用限定类型替代类型变量。通过代码示例展示了泛型擦除后原始类型的保留、反射对泛型的破坏以及多态冲突等问题。同时分析了泛型类型不能是基本数据类型、静态方法中无法使用泛型参数等限制,并探讨了解决方案。这些内容对于理解Java泛型的工作原理和避免相关问题具有重要意义。
|
10月前
|
SQL 流计算 OceanBase
OceanBase CDC从热OB库采集过来的Tinyint(1)类型会默认转换成Boolean,请教一下,如果想转换成int类型,有什方法么?
【2月更文挑战第25天】OceanBase CDC从热OB库采集过来的Tinyint(1)类型会默认转换成Boolean,请教一下,如果想转换成int类型,有什方法么?
225 3
|
前端开发 JavaScript
前端基础 - JavaScript值Boolean类型的默认转换
前端基础 - JavaScript值Boolean类型的默认转换
85 0
|
7月前
|
Python
python布尔类型 (Boolean Type)
【8月更文挑战第3天】
155 8
|
7月前
|
Python
在Python中的Boolean类型
在Python中的Boolean类型
132 0
TS定义布尔值,let flag:boolean = true,定义数字类型 let a1:number = 10,赋值 let str1:string = ‘‘,打印c~.log($(str1))
TS定义布尔值,let flag:boolean = true,定义数字类型 let a1:number = 10,赋值 let str1:string = ‘‘,打印c~.log($(str1))

热门文章

最新文章