数据类型
-
强类型语言(Java、.net 、Python 、C++等语言)
- 要求变量的使用要严格符合规定,所以变量都必须先定义后才能使用
-
弱类型语言(PHP、javascript等语言)
- 某一个变量被定义类型,改变量可以根据环境变化自动进行转换,不需要经过现行强制转换。
-
Java的数据类型分为两大类
-
基本类型(primitive type)
基本类型 位数 字节 默认值 int 32 4 0 short 16 2 0 long 64 8 0L byte 8 1 0 char 16 2 ‘u0000’ float 32 4 0f double 64 8 0d boolean 1 false -
引用类型(reference type)
- 类
- 接口
- 数组
-
-
示例代码:
public class Demo02 { public static void main(String[] args) { // 八大基本数据类型 //整数 int num1 = 10;//最常用 byte num2 = 20; short num3 = 30; long num4 = 40L;//Long类型要在数字后面加个L //小数:浮点数 float num5 = 50.1F;//float类型要在数字后面加个F double num6 = 3.14159; //字符 char name = 'A'; //字符串,String不是关键字,类 //String namea = "PEter"; //布尔值:是非 boolean flag = true; // boolean flag = false; } }
什么是字节
- 位(bit) : 是计算机 内部数据 储存的最小单位, 11001100是一个八位二进制数。
- 字节(byte): 是计算机中 数据处理 的基本单位, 习惯上用大写B来表示,1B(byte,字节) = 8bit(位)
- 字符: 是指计算机中使用的字母、数字、字和符号
1bit 表示1位
1Byte 表示一个字节 1B = 8b
1024B = 1KB
1024 KB = 1M
1024 M = 1G
数据类型拓展
public class Demo03 {
public static void main(String[] args) {
//整数拓展 进制 二进制0b 十进制 八进制0 十六进制0x
int i = 10;
int i2 = 010; //八进制0
int i3 = 0x10; //十六进制0x 0-9 A-F 16
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
}
}
运行结果
![](https://i-blog.csdnimg.cn/blog_migrate/0745682332a427c9cb8f861fe18e0192.png)
浮点数拓展
public class Demo03 {
public static void main(String[] args) {
//浮点数拓展? 银行业务怎么表示? 钱
//BigDecimal 数学工具类
//float; 有限 离散 舍入误差 大约 接近但不等于
//double;
//最好完全使用浮点进行比较
float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //false
float d1 = 21322112323f;
float d2 = d1 + 1;
System.out.println(d1==d2); //true
}
}
运行截图
字符拓展
public class Demo03 {
public static void main(String[] args) {
//字符拓展
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1); //强制换行
System.out.println(c2);
System.out.println((int)c2); //强制换行
//所有的字符本质还是数字
//编码 Unicode 表:(97 = a 65 = A )2字节 0 - 65536 Excel 2 16 = 65536
// U0000 UFFFF
char c3 ='\u0061';
System.out.println(c3); //a
//转义字符
// \t 制表符
// \n 换行
// .......
System.out.println("Hello\nWorld");
System.out.println("==============================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);
//对象 从内存分析
}
}
运行截图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zi8ZXIRP-1659446994757)(C:\Users\86132\Pictures\截图.png)]
布尔扩展
public class Demo2 {
public static void main(String[] args) {
//布尔值扩展
boolean flag = true ;
if (flag==true){} //新手程序员
if (flag){} //老手 flag默认等于true
}
}