JAVA基础:java数据类型

数据类型

位(bit):是计算机内部数据存储的最小单位, 11001100是一个八位二进制数。

字节(byte) :是计算机中数据处理的最基本单位,习惯上用大写B来表示

字符:是指计算机中使用的字母、数字、字和符号

中文单位中文简称英文单位英文简称换算
比特bitb
字节字节ByteB1B = 8b
千字节千字节KiloByteKB1KB = 1024B
兆字节MegaByteMB1MB = 1024KB
吉字节GigaByteGB1GB = 1024MB
太字节TeraByteTB1TB = 1024GB
拍字节PetaBytePB1PB = 1024TB

备注:

在Unicode中一个中文汉子是3个字节。

在GBK中一个中文汉子是2个字节。

1字符 = 2字节

一、基本数据类型

整型和浮点型可以用‘_’连接表示 : int i = 32_45_67; //324567

整数类型(byte,short,int,long)

默认int类型
定义long类型要加L

byte  -128 ~ 127         1个字节       内存占8short  -32768 ~ 32767    2个字节       内存占16int  -2^31 ~ 2^31-1      4个字节       内存占32long  -2^63 ~ 2^63-1     8个字节       内存占64位 正负19位数

浮点类型(float,double)

默认double类型
定义float类型要加F

浮点数是有限长度,离散数,有舍入误差,结果是大约数,不能做精度计算

float    4个字节  

double   8个字节

POSITIVE_INFINITY   正无穷大

NEGATIVE_INFINITY   负无穷大

NaN 非数

字符型(char)

'0' == 48 ,49,50,51,52,53,54,55,56,57
'A' == 65
'a' == 97
    
char    2个字节

布尔型(boolean)

Boolean 1false true

数值的4种表示方式:

十进制

int i = 10;
//10

二进制

二进制的整数以 0b 或 0B 开头

八进制

八进制的整数以 0 开头

int i = 010;
//8

十六进制

十六进制的整数以 0x 或者 0X 开头,其中10~15 分别以 a~f表示

int i = 0x10;
//16

二、引用数据类型

(class)
接口(interface)
数组(array)

类型转换

运算中,不同类型的数据先转化为同一类型,然后进行运算。

隐式转换

byte,short,char -- int -- long -- float -- double

强制转换(高转低)

targetType  varName = (targetType) (data)

byte d = (byte)(a+b)

注意点:不能对boolean类型转换

转换的时候可能存在内存溢出,或者精度丢失。

计算溢出实例

public class HelloWord {
    public static void main(String[] args){
        //操作比较大的数的时候,注意溢出问题
        int money = 10_0000_0000; //jdk新特性,数字之间可以用下划线分割
        int years = 20;
        int total = money * years; //-1474836480, 计算的时候溢出了
        long total2 = money * years; //-1474836480, 默认是int,转换之前已经存在问题了

        long total3 = money * ((long)years); //20000000000 先把一个数转换为long,在计算,计算结果返回大类型。
    }
}
Unicode字符集

范围是 \u0000 ~ \uFFFF , 一共可以表示 65536个字符。其中前256个(\u0000 ~ \u00FF) 字符和ASCII码字符完全重合

转义字符说明Unicode表示方式
\b退格符\u0008
\n换行符\u000a
\r回车符\u000d
\t制表符\u0009
\"双引号\u0022
\’单引号\u0027
\\反斜杠\u005c
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值