- 什么是字节
位:是计算机内部数据储存的最小单位,11001100是一个八位二进制数表示一个字节。
字节:是计算机中数据处理的基本单位,习惯上用大写的B表示。1B(Byte,字节)= 8bit(位)
字符:是指计算机中使用的字母,数字,字和符号。
(1bit表示1位,1Byte表示一个字节1B=8b,1024B=1KB,1024KB=1M,1024M=1G。)
==========================================================================================
//浮点数拓展
float f = 0.1F; // 0.1
double d = 1.0/10; //0.1
System.out.printin(f==d); //false "=="表示双方是否相等的意思
整数拓展:进制,二进制0b,八进制0,十进制,十六进制0x。 int i = 10; int i2 = 010;int i3 = 0x10;
float d1 = 23131312312312313F;
float d2 = d1+1;
System.out.println(d1==d2); //true float有限,离散,舍入误差,大约,接近当不相等。最好完全避免使用浮点数进行比较。
银行业务怎么表示钱? //BigDecimal(数字工具类)
==========================================================================================
//字符拓展
char c1 = 'a'; //char这个类型涉及编码问题
char c2 = '中';
System.out.println(c1); //a
System.out.println((int)c1); //强制转换;97
System.out.println(c2); //中System.out.println((int)c2); //强制转换;20013//所以的字符本质还是数字。编码 Unicode(处理各种语言的文字) 2字节 可以表达65536个字符=========================================================================================
//转义字符
// \t 制表符(水平制表符)
// \n 换行
System.out.println("Hello\tWorld"); //Hello World.
========================================================================================
String sa = new string(original:"hello world");//在IDEA里original: 直接在括号里面打双引号就会出来。
String sb = new string(original:"hello world");//new就是在内存开辟了一个空间,然后这个空间有地址,new了几个就是有几块空间,就有几个地址,这个比较的是地址所以不相等。字符串的内容就是地址
System.out.println(sa==sb); //false(堆内存地址不一样)
String sc = "hello world";
String sd = "hello world";
System.out.prinlin(sc==sd); //true(同一个常量池)
//如果比较的对象是基本数据类型,则比较的是数据是否一致;如果比较的是引用类型,则比较的是对象的地址是否一致。
//对象 从内存分析(上面两个本质是地址里的数据相同,但是地址不一样)
//引用类型比较地址值,基本类型比较 值是否一样。