【Java学习笔记】【基础篇】02.数据类型

数据类型

Java的数据类型分为两大类:基本类型(primitive type)和引用类型(reference type)。

在这里插入图片描述

1.八大基本类型

//整数
int num1 = 10;
byte num2 = 20;
short num3 = 30;
long num4 = 40L;  //long类型要在数字后面加L
//浮点数
float num5 = 50.1F;   //float类型要在数字后面加F
double num6 = 3.1415926;
//字符
char name1 = 'A';
char name2 = '中';
//字符串,String不是关键字,它是一个类
//String name3 = "Amazing Ming";
//布尔值
boolean flag = true;
//或boolean flag = false;

2.整数拓展

表示不同进制:

十进制整数,如:99,-500,0
八进制整数,要求以0开头,如:015
十六进制整数,要求0x或0X开头,如:0x15

例如:

int i = 10;
int i2 = 010;
int i3 = 0x10;
System.out.println(i);  //10
System.out.println(i2); //8
System.out.println(i3); //16

3.浮点数拓展

金融行业面试官问:银行金融业务用什么类型表示?

float f = 0.1f;
double d = 1.0/10;
System.out.println(f);  //0.1
System.out.println(d);  //0.1
System.out.println(f == d);  //false

float d1 = 123123123145f;
float d2 = d1 + 1;
System.out.println(d1 == d2);  //true

原因:由于字长有限,浮点数能够精确表示的数是有限的,因而也是离散的。浮点数一般都存在舍入误差,很多数字无法精确表示,其结果只能是接近,但不等于;二进制浮点数不能精确的表示0.1,0.01,0.001这样10的负次幂。并不是所有的小数都能可以精确的用二进制浮点数表示。

因此,浮点类型float, double的数据不适合在不容许舍入误差的金融计算领域。 如果需要进行不产生舍入误差的精确数字计算,需要使用BigDecimal类。

最好避免使用浮点数进行比较!

4.字符型拓展

‘A’是一个字符,“A”表示一个字符串

char 类型用来表示在Unicode编码表中的字符。

Unicode编码被设计用来处理各种语言的所有文字,它占2个字节,可允许有65536个字符。

char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println(c2);       //强制类型转换↓
System.out.println((int) c1); //97
System.out.println((int) c2); //20013

Unicode具有从0到65535之间的编码,他们通常用从’u0000’到’uFFFF’之间的十六进制值来表示(前缀为 u表示Unicode)

char c3 = '\u0061';
System.out.println(c3);  //a

5.转义字符

编号转义字符说明Unicode
1\n换行\u000a
2\r回车\u000d
3\b退格\u0008
4\t制表符(tab)\u0009
5\f走纸换页
6\"双引号\u0022
7\’单引号\u0027
8\\反斜杠\u005c
9\xxx(三位数)八进制转义符
10\uxxxxx十六进制转义符

6.相关知识

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

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

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

ASCIIS码:
1个英文字母=1个字节
1个中文汉字 =2个字节
1个ASCII码=1个字节

UTF-8编码:
1个英文字母=1个字节
1个英文标点=1个字节
1个中文(含繁体)=3个字节
1个中文标点=3个字节

Unicode编码:
1个英文字母=2个字节
1个英文标点=2个字节
1个中文(含繁体)=2个字节
1个中文标点=2个字节

电脑的32位和64位的区别:
1.32位操作系统只可以使用32位的CPU,而64位的CPU既可以安装32位操作系统也可以安装64位操作系统;
2.寻址能力简单点说就是支持的内存大小能力,64位系统最多可以支达128 GB的内存,而32位系统最多只可以支持4G内存;
3.32位操作系统只可以安装使用32位架构设计的软件,而64位的CPU既可以安装使用32位软件也可以安装使用64位软件。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AmazingMing_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值