简自动类型提升,精度损失类型强制转换,常用转义字符,简单帮你回顾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类型。


相关文章
|
12天前
|
存储 缓存 Java
大厂面试必看!Java基本数据类型和包装类的那些坑
本文介绍了Java中的基本数据类型和包装类,包括整数类型、浮点数类型、字符类型和布尔类型。详细讲解了每种类型的特性和应用场景,并探讨了包装类的引入原因、装箱与拆箱机制以及缓存机制。最后总结了面试中常见的相关考点,帮助读者更好地理解和应对面试中的问题。
37 4
|
10天前
|
存储 消息中间件 NoSQL
使用Java操作Redis数据类型的详解指南
通过使用Jedis库,可以在Java中方便地操作Redis的各种数据类型。本文详细介绍了字符串、哈希、列表、集合和有序集合的基本操作及其对应的Java实现。这些示例展示了如何使用Java与Redis进行交互,为开发高效的Redis客户端应用程序提供了基础。希望本文的指南能帮助您更好地理解和使用Redis,提升应用程序的性能和可靠性。
24 1
|
25天前
|
存储 Java 关系型数据库
[Java]“不同族”基本数据类型间只能“强转”吗?
本文探讨了不同位二进制表示范围的计算方法,重点分析了Java中int和char类型之间的转换规则,以及float与int类型之间的转换特性。通过具体示例说明了显式和隐式转换的条件和限制。
33 0
[Java]“不同族”基本数据类型间只能“强转”吗?
|
24天前
|
存储 Java 编译器
[Java]基本数据类型与引用类型赋值的底层分析
本文详细分析了Java中不同类型引用的存储方式,包括int、Integer、int[]、Integer[]等,并探讨了byte与其他类型间的转换及String的相关特性。文章通过多个示例解释了引用和对象的存储位置,以及字符串常量池的使用。此外,还对比了String和StringBuilder的性能差异,帮助读者深入理解Java内存管理机制。
18 0
|
6月前
|
SQL 流计算 OceanBase
OceanBase CDC从热OB库采集过来的Tinyint(1)类型会默认转换成Boolean,请教一下,如果想转换成int类型,有什方法么?
【2月更文挑战第25天】OceanBase CDC从热OB库采集过来的Tinyint(1)类型会默认转换成Boolean,请教一下,如果想转换成int类型,有什方法么?
175 3
|
前端开发 JavaScript
前端基础 - JavaScript值Boolean类型的默认转换
前端基础 - JavaScript值Boolean类型的默认转换
63 0
|
3月前
|
Python
python布尔类型 (Boolean Type)
【8月更文挑战第3天】
64 8
|
3月前
|
Python
在Python中的Boolean类型
在Python中的Boolean类型
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))
TS,数据类型概述,常见的基本数据类型有number/string/boolean/undefined/null,字符串用““,let food: string = ‘糖葫芦‘,布尔类型
TS,数据类型概述,常见的基本数据类型有number/string/boolean/undefined/null,字符串用““,let food: string = ‘糖葫芦‘,布尔类型

热门文章

最新文章