• 什么是字节

位:是计算机内部数据储存的最小单位,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(同一个常量池)

//如果比较的对象是基本数据类型,则比较的是数据是否一致;如果比较的是引用类型,则比较的是对象的地址是否一致。

//对象  从内存分析(上面两个本质是地址里的数据相同,但是地址不一样)

//引用类型比较地址值,基本类型比较 值是否一样。