Java基本数据类型

Java基本数据类型

注:本文中所有代码都应在主函数中执行

1.整型变量:

​ 整型变量:各整数类型有固定的表数范围和字段长度,不受具体操作系统的影响

类型占用存储空间取值范围二进制位数
byte1字节-128~1278
short2字节-32768 ~ 3276716
int4字节-2147483648~214748364732
long8字节-2的63次方 ~ 2的63次方-164

1个byte字节=8bit(第一个比特位表符号)

Java语言默认整形常量为 int,声明long类型变量时后面加上"L";

进制表示运算标记
二进制0,1满2进1以0b或0B开头
十进制0-9满10进1以D开头
八进制0-7满8进1以数字0开头
十六进制0-9,A-F满16进1以0x或0X开头

注:十六进制中的A-F不区分大小写


//整型变量的定义
int a;//声明
            a = 10;//赋值
        /**
         * 声明之后必须赋值
         */

        int b,c,d;
            b = 2;
            c = 4;
            d = 6;
        /*
         * 可以分开声明赋值,也可以直接声明赋值
         */
        /*
         * int b = 2,c = 4,d = 6;
         */

        /*
         * int e = 43.4;
         * int默认为整型,而43.3double型,则无法赋值
         */
        System.out.print(a);

2、浮点类型

类型占用空间内存二进制位数
float4字节32
double8字节64

Java的浮点型默认为double,如果要声明 float 型的变量,则要在数据后面加 f 或 F


//浮点型变量的定义

		//浮点型默认为double
		double a = 9.8;
        
		//float可以直接写为整数,如果是小数,就要加f
        float b = 9.5f;
        /*
         * 虽然double和float只差了0.3,但是由于计算机是将数字转换为二进制计算的,算出来的			结果不等于0.3
         */
        System.out.print(a-b);

3、逻辑型变量boolean(布尔)

​ boolean类型适于逻辑运算,数据只允许取值true或false

		boolean b1 = true;
        boolean b2 = false;

不可以用0或非零的数字代替 false 和 true

4、字符型(char)

char型用来表示通常意义上的"字符",char占2个字节,用单括号引起来的单个字符

char a = ‘瑜’;(不论是英文还是中文都只能有一个)

	char a = 'a';
	char b = '你';//底层值为20321
	System.out.println(a);
	System.out.println(b);
	System.out.println(a+1);
	System.out.println(b+1);//20322

运算:char类型是可以运算的因为char在字符编码表中有对应的数值。在JAVA中,对char类型字符运行时,直接当做对应编码表的整数来对待。

编码问题:计算机表示字符:

​ 计算机底层都是二进制,计算机如何表示字符

编码表:人为定义的

​ 字符在不同的编码表中有一个对应的十进制数,最终在计算机上使用数存储

最早的ASCII码只能表示英文,然后不同的国家定义了自己国家的编码,后来诞生了Unicode编码,包括了全球所有字符

utf-8是一种长度可变的编码表

5、基本数据类型转换

8种基本数据类型,除了布尔型(boolean),其余都可转换为其他类型

分类:

​ 1.默认转换:数据类型按容量大小排序为:byte,short,char->int->long->float->double

byte,short,char之间不会互相转换,他们三者在计算时首先会转换为int类型

		int a = 10;
        long b = a;
        float f = b;
        float f1 = a+b;
		System.out.println(f);
        System.out.println(f1);

运行结果 :
在这里插入图片描述

​ 2.强制转换:容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出,有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算。

		int y = (int)x;
        int  x = 10;
        byte y = (byte)x;//int转换为byte时存在移位的情况
        System.out.println(y);

        float f = 6.2f;
        long c = (long)f;
        System.out.println(c);

运行结果 :
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值