【HC】java基础
1.== 与 equals==:
基本类型:值相等
引用类型:地址相等(地址放在堆空间,注意常量池里的String值)
equals:
运用于引用类型
在没有重写equals方法前,与 等等 的作用相同:
public boolean equals(Object obj) {
return (this == obj);
}
1
2
3
2.instanceof关键字
instanceof关键字:
注意:编译器会检查 obj 是否能转换成右边的class类型(不会自动类型转换),
如果不能转换则直接报错,如果不能确定类型,则通过编译
实例:
“s” instanceof String ? true : false;
3.hashCode()
hashCode() 方法用于返回字符串的哈希码
s*31^(n-1) + s*31^(n-2) + … + s
4.final的作用
final 修饰的类叫最终类,该类不能被继承。
final 修饰的方法不能被重写。
final 修饰的变量叫常量,常量必须初始化,初始化之后值就不能被修改。
5. java 中操作字符串都有哪些类?它们之间有什么区别?
操作字符串的类有:String、StringBuffer、StringBuilder。
String:声明的对象不可变
StringBuffer、StringBuilder:在原有对象的基础上进行操作
(StringBuffer:是线程安全的,StringBuilder:线程不安全
,但是StringBuffer效率没有StringBuilder高,所以单线程一般采用StringBuiler。)
6.字符串的反转
使用 StringBuilder 或者 stringBuffer 的 reverse() 方法。
实例:
String str = new String(“abcd”);
StringBuffer buffer = new StringBuffer();
System.out.println(buffer.append(str).reverse());
http://cdn.u1.huluxia.com/g3/M03/33/38/wKgBOV3GBRuAc0pOAAB7RTr-mbc484.jpg
页:
[1]