- Object类
- 简介:是所有类的直接或者间接父类,位于继承树的最顶层。假如没有显式extends某个类,默认继承Object类,否则是间接继承。Object类中的方法是所有类都具备的方法(因为继承而来)。作为参数,可以接受任何对象,作为返回值,可以返回任何对象。
- toString() 返回类型和哈希码值的字符串表示,不过满足不了子类的需求(比如展示子类对象的属性值),所以一般来讲需要重写
- hashcode() 返回该对象的哈希码值(根据对象地址使用hash算法计算出来的int类型的数值,一般来讲,一一对应,相同对象,相同哈希码值,不同对象,不同哈希码值)
- getClass() 返回当前对象的类型,用于判断两个引用中实际存储对象类型是否一致
- equals() 默认实现为this==obj,比较两个对象地址是否相同,一般来讲,子类需要比较两个对象的内容是否相同,所以也需要重写
- 重写步骤:比较两个引用是否指向同一个对象
- 判断obj是否为null
- 判断两个引用的指向的实际对象类型是否一致
- 强制类型转换
- 依次比较各个属性值是否相同
- Math类:常见的数学运算
- Random类:生成随机数
- 包装类:自1.5后,自动装箱和拆箱
- 什么是包装类:八种基本数据类型所对应的类
基本数据类型 包装类型 byte Byte short Short int Integer long Long float Float double Double boolean Boolean char Character - 装箱:基本数据类型-->包装类型;拆箱:包装类型-->基本数据类型
- 装箱:
Integer int1 = new Integer(10); Integer int2 = Integer.valueOf(10); Integer int3 = 10;
- 拆箱:
int int4 = int1.intValue(); int int5 = int2;
- 基本类型-->String:
int int1 = 10; String int2 = int1 + ""; String int3 = Integer.toString(int1);
- String-->基本类型
int int4 = Integer.parseInt(int3);
- Integer缓冲区:[-128,127]Integer对象已经被系统创建好了,放在缓冲区
- 什么是包装类:八种基本数据类型所对应的类
- Date类:
- Date(大部分方法已经过时)
Date date1 = new Date(); //获取当前时间的Date对象 long int1 = date1.getTime(); //date1时间距离1970年1月1日经过的毫秒数
- SimpleDateFormat
1 //创建SimpleDateFormat对象,即时间显示格式 2 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss"); 3 //创建Date 4 Date date = new Date(); 5 //格式化date,即date变成字符串 6 String str = sdf.format(date); 7 System.out.println(str); 8 //解析str,即字符串变成date 9 Date date1 = sdf.parse(str); 10 System.out.println(date1.toLocaleString());
- Calendar(推荐使用)
Calendar calendar = Calendar.getInstance(); //创建Calendar对象 int year = calendar.get(Calendar.YEAR); //get方法,取出各个属性 int month = calendar.get(Calendar.MONTH); int day = calendar.get(Calendar.DAY_OF_MONTH); int hour = calendar.get(Calendar.HOUR); int minute = calendar.get(Calendar.MINUTE); int second = calendar.get(Calendar.SECOND); System.out.println(year+"年"+(month+1)+"月"+day+"日"+hour+":"+minute+":"+second); calendar.set(Calendar.YEAR,2000); //set方法,设置各个属性 calendar.add(Calendar.YEAR,1); //add方法,增加或减少属性的值(负数就是减少) Date date = calendar.getTime(); //Calendar对象转变为Date对象 calendar.setTime(date); //Date对象转变为Calendar对象
- Date(大部分方法已经过时)
- String类,StringBuffer类,StringBuilder类
- String类:不可变性,字符串字面值存储在字符串池中,可以共享
- length()
- charAt(int index)
- contains(String str)
- toCharArray()
- indexOf(String str) 查找str首次出现的下标,若有,则返回该下标,若无,则返回-1
- lastIndexOf(String str) 查找str最后一次出现的下标
- trim() 去掉字符串前后的空格
- toUpperCase()
- endWith(String str)
- replace(char oldChar,char newChar)
- String[] split(String str) 根据str做拆分,比如Java is the best programming language用“ ”做拆分
- compare() 比大小
- StringBuffer类:可变长,相比StringBuilder,线程安全,效率慢(仍然比String高),适合多线程
- StringBuilder类:和StringBuffer唯一不同的是,线程不安全,效率高,适合单线程
- String类:不可变性,字符串字面值存储在字符串池中,可以共享
- System类
- 获取当前时间距离1970年毫秒数
1 long start = System.currentTimeMillis(); 2 { 3 //…… 4 } 5 long end = System.currentTimeMillis(); 6 System.out.println("用时:"+(end-start));
- 退出
System.exit(0); System.out.println("end"); //此句不执行
- 获取当前时间距离1970年毫秒数
Java常用类
阅读(2427) 评论(0)