toString方法
toString是object类中的一个方法,一般类默认继承object类
在object中对toString的定义如下:
在没有对toString重写时,输出内容为类名+16进制的地址
对toString方法重写后输出为
equals方法
equals方法比较两个对象的地址,同一对象返回为true,不同对象返回为false
如果想要根据类来区分,则需要重写euqals
Date类
Date创建对象可以获取当前电脑的时间
date.getTime()可以获取从1971.1.1到目前的时间(毫秒)
dateFormat类
dateFormat可以用来实现字符串和日期之间的转换;
Calendar类
Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象,如下:
getInstance使用默认时区和语言环境获得一个日历。
Calendar类静态方法
Calendar c = Calendar.getInstance(); //返回当前时间
Calendar常用的一些方法:
System类
1、System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。
2、该类的构造方法是private,所以无法创建该类的对象,也就是无法实例化该类。
3、其内部的成员方法和成员变量都是static(静态)的,引用时直接使用System类名作为前缀。如,System.gc()
4、System中包含了in、out和err三个成员变量,分别代表标准输入流(键盘输入)、标准输出流(显示器)、标准错误输出流(显示器)。
System常用的两种方法(currenTimeMillis()和arrayCopy())
currenTimeMillis()用于获取当前时间
package system;
public class currentTime {
public static void main(String[] args) {
long start = System.currentTimeMillis();
for (int i =0;i<10000;i++){
System.out.println(i);
}
long end = System.currentTimeMillis();
System.out.println(end-start);
}
}
可以用来计算某一方法的时间。
System.arraycopy(a,b,c,d,e);
其中,a是被复制的数组;b是复制的起始位置;c是复制到的数组;d是复制到这个数组的起始位置;e是复制到这个数组的结束位置。
package system; public class arrayCopy { public static void main(String[] args) { int [] a = {1,2,3,4}; int [] b = {3,4,5,6,7,8}; System.arraycopy(a,0,b,0,3); for(int i:b){ System.out.println(i); } } }
输出如下:
1
2
3
6
7
8
StringBuilder
程序开发过程中,我们常常碰到字符串连接的情况,方便和直接的方式是通过"+"符号来实现,但是这种方式达到目的的效率比较低,且每执行一次都会创建一个String对象,即耗时,又浪费空间。使用StringBuilder类就可以避免这种问题的发生,下面就Stringbuilder的使用做个简要的总结:
append方法用来连接字符串:
package stringBuilder;
public class append {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
System.out.println(sb);
sb.append("hello");
System.out.println(sb);
StringBuilder sb1 = new StringBuilder();
sb1 = sb.append("world1213435465778");
System.out.println(sb1==sb);
}
}
包装类
装箱与拆箱
装箱就是将基础类型转化为包装类
拆箱就是将包装类型转化为基础类型
基本类型 | 对应的包装类位于java.lang包中 |
int | Integer |
float | Float |
double | Double |
char | Character |
long | Long |
byte | Byte |
short | Short |
boolean | Boolean |
可以使用Integer i = new Integer(4)或者Integer a = Integer.valueOf(4)将基本类型转化为包装类。
使用int i =a.intValue()可以将包装类转化为基本类。
在java5以后已经实现了自动装箱和自动拆箱Integer i = 4; int I = i;
为什么要有包装类
一,在某些场合不能使用基本类型,必须使用包装类
二,包装类可以为null,而基本类不能
三,包装类中有一些有用的方法
四,包装类存在数据缓存