Java010——Java八大基本数据类型的进一步学习

前言:前面文章Java009——Java数据类型&变量的简单认识中我们学习了Java数据类型&变量,也简单介绍了Java八大基本数据类型。下面我们继续学习Java八大基本数据类型

回顾:Java八大基本数据类型

============================================================================================
大类		类型名称	   		关键字	   占用内存	      取值范围
--------------------------------------------------------------------------------------------
		|字节型			byte		1 字节		-128~127
整型		|短整型			short		2 字节		-32768~32767
		|整型			int			4 字节		-2147483648~2147483647
		|长整型			long		8 字节		-9223372036854775808L~9223372036854775807L
--------------------------------------------------------------------------------------------
		|单精度浮点型		float		4 字节		+/-3.4E+38F6~7 个有效位)
浮点型	|双精度浮点型		double		8 字节		+/-1.8E+308 (15 个有效位)
--------------------------------------------------------------------------------------------
字符型	|字符型			char		2 字节		ISO 单一字符集
--------------------------------------------------------------------------------------------
布尔型	|布尔型			boolean		1 字节		truefalse
============================================================================================

一、整型

整型包含字节型byte、短整型short、整型int、长整型long
再开发过程中,如果需要使用整型的话,一般使用int类型,但是具体需要结合实际情况决定

public class HelloWorld {
    public static void main(String[] args) {
        //byte类型存储范围-128~127
        byte b1 = 10;
        //yte b2 = -129;//编译不通过,超出byte存储范围
        //byte b3 = 128;//编译不通过,超出byte存储范围

        //short类型存储范围-32768~32767
        short s1 = 20;

        //int类型存储范围-2147483648~2147483647
        int i1 = 30;

        //long类型存储范围-9223372036854775808L~9223372036854775807L
        long l1= 40L;//long类型整数后面带上L

        System.out.println(l1);//输出查看
    }
}

二、浮点型

2.1、浮点型常量的两种表示形式

十进制数形式。如: 5.12,512.0f,.512 (必须有小数点)
科学计数法形式。如: 5.12e2(5.12乘10的2次方),512E2(512乘以10的2次方),512E-2(512乘以10的负2次方)

2.2、浮点型数据精度

float:单精度 ,尾数可以精确到7位有效数字。很多情况T,精度很难满足需求。
double:双精度,精度是float的两倍。通常采用此类型。

注意点:
1、定义float类型的变量,赋值时需要以" f “或” F "作为后缀。
2、Java的浮点型常量默认为double型

开发中,如果需要使用浮点型变量时,通常都声明为double类型,因为double类型精度更高。

public class HelloWorld {
    public static void main(String[] args) {
        //浮点型
        float f1 = 10.123f;//浮点型小数后面带上f或F
        double d1 = 3.141592653589;

        System.out.println(f1);//输出查看
        System.out.println(d1);//输出查看
    }
}

idea控制台输出结果查看
在这里插入图片描述

2.3、浮点型数据特别说明

public class HelloWorld {
    public static void main(String[] args) {

        //浮点型
        float f1 = 0.1f;//浮点型小数后面带上f
        float f2 = 0.2f;//浮点型小数后面带上f
        System.out.println(f1+f2);

        double d1 = 0.1;
        double d2 = 0.2;
        System.out.println(d1+d2);

        System.out.println(0.1+0.2);
    }
}

idea控制台输出结果查看
Java010——Java八大基本数据类型的进一步学习_第1张图片
发现d1+d2不等于0.3,即0.1+0.2不等于0.3

结论:
1、并不是所有的小数都能可以精确的用二进制浮点数表示。二进制浮点数不能精确的表示0.1、0.01、 0.001这样 10的负次幂。
2、浮点类型float、double的数据不适合在不容许舍入误差的金融计算领域。如果需要精确数字计算或保留指定
位数的精度,需要使用BigDecimal类(可以自己查一下资料怎么使用)。

三、字符型char

3.1、两个前提——了解Unicode编码和ASCII码

Java中的所有字符都使用Unicode编码,故一个字符可以存储一个字母, 一个汉字, 或其他书面语的一个字符。
Unicode编码参考1
ASCII码参考1

3.2、字符型四种表示方式

public class HelloWorld {
    public static void main(String[] args) {

        //字符型
        //方式1:使用单引号('')括主单个字符
        char c1 = '男';//字符型只能是单个字符,例如’男生‘这是两个字符,赋值时会报错

        //方式2:直接使用Unicode值,例如:\u0023表示'#'
        char c2 = '\u0023';

        //方式3:使用转义字符'\'将其后面的字符转变成特殊字符常量
        char c3 = '\n';//\n表示输出换行

        //方式4:使用ASCII码
        char c4 = 65;//输出A
        char c5 = 97;//输出a
        
		System.out.println(c4);
        System.out.println(c5);
    }
}

Java010——Java八大基本数据类型的进一步学习_第2张图片

四、布尔型boolean

布尔型boolean只有两个值要么是true,要么是false
主要用于条件判断

public class HelloWorld {
    public static void main(String[] args) {
        //布尔型
        boolean b1 = true;//布尔型只有两个可选值true和false
        boolean b2 = false;//布尔型只有两个可选值true和false
        System.out.println(b1);
        System.out.println(b2);
    }
}

Java010——Java八大基本数据类型的进一步学习_第3张图片

你可能感兴趣的:(Java全套学习笔记,java,学习,jvm)