自学内容网 自学内容网

java小知识点总结

一、比特流的本质就是数组

二、位运算

位运算就是CPU的底层原理,半导体电路进行位运算

位运算涉及一些算法,&和^

^ 异或 两变量交换值,不依赖第三个变量

x^s = k 异或知道两者就能推另一个

a = a<<2就是乘以2的多少次方

相反 a=a>>2;就是除以多少次方

不仅是二进制,可以推广到任意进制

加减乘除底层都是位运算,运算速度很快

位运算是计算机底层很重要的运算

三、不可变字符串

String 类没有提供修改字符串的方法

不可变不是指的值不可变,而是不可以在原地址改变,只有再申请一个地址来存新的数据

四、

Java中两个非基本类型比较,比较的是他们的指向是否相同

赋值先判断常量池有没有这个值,如果有的话,不会再申请一个新的,而是一起指向那个值

Java 中如果系统判断一块内存地址不再需要,会自动的进行垃圾回收

五、equals()

new的对象,就算值一样,地址也是不一样的,不在常量池中

equals()方法用于判断两个对象的内容是否相等。它与==运算符有所不同,==运算符主要用于判断两个引用是否指向同一个对象(即比较的是对象的引用地址),而equals()方法重点关注的是对象内部所包含的数据内容是否相同。

equals()每个类都有这个方法,都是集成Object,默认和==一样比较是否相同

字符串中对这个方法进行了重写,近比较值

重写equals还需要重写hashcode(),因为hashmap的使用需要这两个方法配合

六、空串

空串是指一个字符串对象,其长度为 0,null 串并不是一个真正意义上的字符串对象,而是表示一个字符串引用变量没有指向任何字符串对象,即它的值为 null。


原文地址:https://blog.csdn.net/qq_69304031/article/details/145123805

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!