- 常用类的总结
1 内部类
2 Object类
3 包装类
4 数学类
5 时间类
6 字符串
7 String Builder 和 String Buffer
8 DecimalFormat - 内部类
- 1 内部类 一个类中内部再定义一个完整的类 一般情况下类与类之间是相互独立的,内部类是一个类在一个类中,和成员变量和成员方法是同一个级别。 内部类的好处: 内部类和外部类的效果是一样的,内部类的隐藏性比较好 这个理由其实比较扯淡 注意一个文件下只有一个public class 2 匿名内部类: 匿名内部类主要是直接实现接口之后重写抽象方法,
- Object 类
- object中常用的方法 1 equals() 方法 常用来和==来做比较 == 是一个比较运算符 可以对基本类型和引用类型做判断,如果是基本类型那就判断值是否相等,如果是引用类型那么判断的是地址是否相等,根据地址引用来决定是不是相同的对象, 这个地址是内存中堆空间中引用的地址,是赋值给变量的. equals()方法是object中的方法,只能判断引用类型对象, 类中的equals方法默认判断地址是否相等,子类需要重新写equals方法 注意 String类的equals()方法已经重新写了。 2 hashCode() 方法 返回对象的哈希值,不同的对象返回不同的整数,经常用hashCode()和equals()方法来比较对象是否相同, 哈希值是根据内存地址来产生的,但是不等于是内存地址。 如果两个对象相等! 就是说两个对象的equals()方法比较相等,那么他们的hashcode值一定相等, 如果两个对象的哈希值相等! 并不能说明两个对象相等,意思就是说equals相等,因为两个键值对相等那么他们的哈希值一定相等,但是两个键值对的哈希值相等并不能说明键值对的内容相等, 因为哈希值会产生冲突。 3 toString() 返回对象的字符串形式,一般用来返回属性值 4 finzlize() 方法 当对象被回收时,系统会自动调用该对象的finzlize()方法,一般用于释放资源的操作放到该方法中, 当对象没有被引用时,jvm会认为该对象是垃圾对象,就会被回收掉,在销毁之前会先调用finzlize方法 垃圾回收机制是有系统调用的,就是自己的GC算法,也可以通过System.gc() 主动触发垃圾回收机制,
- 包装类
- 基本类型和对应的包装类 byte - Byte short - Short int - Integer long -Long float - Float double - Double char - Character boolean - Boolean 包装类的意义: 1 让基本类型数据拥有面向对象的特征, 面向对象的基本特征:继承 封装 多态 2 字符串转化成基本数据类型的方式 Integer.parseInt() 字符串转成整数型, Long.paseLong() Double.parseDouble()
- 数学类
- 数学类的方法都是静态方法 Math 类 Math.abs() 取绝对值 Math.max() 求最大值 Math.min() 最小值 Mathi.round() 四舍五入
- java常用的时间类
- Date日期类 - Calendar 日历类 - simpleDateFormat 格式化时间类 - java 8 时间类 1 localDate类 表示今天的日期 2 localTime.now() 获取当前时间
- String 类
- char() 获取某个位置的字符 - concat() 字符串拼接 - contains() 判断是否包含子串 - endWith() 判断源字符串是否以xxx字符串结尾 - startWith() 判断是否以xxx字符串开头 - indexOf() 计算出字符串第一个出现的位置 - lastindexOf() 最后一个位置出现的字符串 - length() 字符串长度 - replace() 替换 - split() 字符串切割 - substring() 字符串截取 - trim() 去除左右空格 - valueOf() 基本数据类型转化成字符串
-
String,String Builder 和 String Buffer
-
String 是不可变字符串数据类型,每次拼接都会产生一个新的字符串,内存迟早会被这些字符串拼接塞满
-
String buffer 和String builder 都是可变字符串 不产生新的对象, 大量的字符串拼接建议使用String buffer
-
String buffer 线程安全 String builder 效率高
-
方法 append() toString()
-
Decimal Format 类
- DecimalFormat 类 对小数进行格式化处理,保留几位小数,
注意 . 表示小数点 0和# 表示保留几位数
DecimalFormat df = new DecimalFormat(".00"); // 或者.##
String s = df.format(d); // 把 d 转成上面设置的格式
System.out.println(s);//3.33



