数据类型基础知识
数据类型
强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
安全性高,速度慢
弱类型语言
数据类型分类
- 基本类型(重点):
public class Six1 {
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.14159264323598562398659328562395;
//char字符
char name = 'a';
//字符串string不是关键字,他是一个类
String name2 = "sfhsoduhsd";
//布尔值:是非
boolean flag = true;
//boolean flag = false;
}
}
- 引用类型
- 类
- 接口
- 数组
字节
位(bit):是计算机内部数据储存的最小单位
字节(byte):是计算机中数据处理的基本单位,习惯用Byte来表示
1B = 8 bit
1024B = 1KB;
1024KB = 1M;
1024M = 1G;
在比较大小时,最好不要使用浮点数进行比较!
BigDecimal 数学工具类
拓展
整数拓展
进制
- 二进制 0b
- 十进制
- 八进制0
- 十六进制0x
int i= 10;
int i1 = 010;
int i2 = 0x10;
System.out.println(i);
System.out.println(i1);
System.out.println(i2);
输出:
浮点数拓展
float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);//false
System.out.println(f);
System.out.println(d);
float d1 = 1213545215465432545132f;
float d2 = d1 + 1;
System.out.println(d1);
System.out.println(d2);
System.out.println(d1==d2);//true
输出:
float:有限、离散、舍入误差、大约、接近但不等于
建议不要用float来作比较!
面试时:银行业务怎么表示?->BigDecimal数学工具类
字符型拓展
char c1 = 'a';
char c2 = '中';
char c3 = 'A';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);//强制转换
System.out.println(c3);
System.out.println((int)c3);//强制转换
//所有的字符本质还是数字
//编码 Unicode 0-65536个字符
输出:
转义字符
//转义字符
//\t 制表符
//\n 换行
//....
System.out.println("Hello\tWorld");
System.out.println("Hello\nWorld");
输出:
布尔值拓展
//布尔值扩展
boolean flag = true;
if(flag==true){ }//新手
if(flag){}//老手
对象 从内存分析
String original;
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);//false
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);//true
//对象 从内存分析、
输出: