本帖最后由 社会人 于 2018-11-14 17:02 编辑
第一天
object类 常用的APIobject
所有类的父类,顶尖类 toString方法将调用的对象的参数输出 重写如在自定义类中 快捷方式toString equals方法判断对象是否相等(默认值为地址值) 若果需要判断值需要重写 @Override public boolean equals(Object o) { Data类(表示日期和时间的类)
public long getTime() 把日期对象转换成对应的时间毫秒值。 DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");(表示格式) Date parse(String source)`:将字符串解析为Date对象。 Date date = df.parse(str); String format(Date date)`:将Date对象格式化为字符串。 String str = df.format(date); DateFormat类
DateFormat为抽象类,不能直接使用. 需要常用的子类java.text.SimpleDateFormat. 构造方法为: public SimpleDateFormat(String pattern) pattern是哟个代表日期时间的自定义字符串的格式 y 年 M 月 d 日 H 时 m 分 s 秒 创建SimpleDateFormat对象的格式: DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); DateFormat的常用方法:format:将Date对象格式化为字符串 String str = df.format(date); parse:将字符串解析为Date对象 Date date = df.parse(str); Calendar类(代表日历,提供了不同国家的历法)
Calendar类是一个抽象类,无法直接创建对象使用,里面有一个genInstance()该方法返回Calendar类的子类对象 使用方法: Calendar c=new Calendar.getInstance(); YEAR 年 MONTH 月 DAY_OF_MONTH 月中的天(几号) HOUR 时(12小时制) HOUR_OF_DAY 时(24小时制) MINUTE 分 SECOND 秒 DAY_OF_WEEK 周中的天(周几,周日为1,可以-1使用) get(获取指定日历段的值) cal.get(Calendar.DAY_OF_MONTH); set(设置或更改指定日历段的值) cal.set(Calendar.YEAR, 2020); add(调整指定日历段的值+或-) cal.add(Calendar.YEAR, -3); getTime() Calendar中的getTime方法并不是获取毫秒时刻,而是拿到对应的Date对象。 Calendar cal = Calendar.getInstance(); Date date = cal.getTime(); System.out.println(date); System类
currentTimeMillis()方法
currentTimeMillis方法就是 获取当前系统时间与1970年01月01日00:00点之间的毫秒差值 1-9999所需要的时间(毫秒) long start = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
System.out.println(i);
}
long end = System.currentTimeMillis();
System.out.println("共耗时毫秒:" + (end - start));
StringBuilder类
称为字符串缓冲区可以将字符串的拼接简化(减省内存)
public class StringBuilderDemo {
public static void main(String[] args) {
StringBuilder sb1 = new StringBuilder();
System.out.println(sb1); // (空白)
sb1.append("fafw");
// 使用带参构造
StringBuilder s=new StringBuilder("itcast");
System.out.println(s); // itcast
}
}
append方法
append方法具有多种重载形式,可以接收任意类型的参数.任何数据作为参数都会将对应的字符串内容添加到StringBuilder中 StringBuilder对象append可以添加任何类型 链式编程: builder.append("hello").append("world").append(true).append(100); toString方法toString方法,StringBuilder对象将会转换为不可变的String对象 链式创建: StringBuilder sb = new StringBuilder("Hello").append("World").append("Java"); 第二天
Collection集合
Collection:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是java.util.List和java.util.Set。其中,List的特点是元素有序、元素可重复。Set的特点是元素无序,而且不可重复。List接口的主要实现类有java.util.ArrayList和java.util.LinkedList,Set接口的主要实现类有java.util.HashSet和java.util.TreeSet。 Collection常用功能public boolean add(E e)`: 把给定的对象添加到当前集合中 public void clear()` :清空集合中所有的元素 public boolean remove(E e)`: 把给定的对象在当前集合中删除 public boolean contains(E e)`: 判断当前集合中是否包含给定的对象 public boolean isEmpty()`: 判断当前集合是否为空 public int size()`: 返回集合中元素的个数 public Object[] toArray()`: 把集合中的元素,存储到数组中 Iterator接口迭代:即Collection集合元素的通用获取方式。在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续在判断,如果还有就再取出出来。一直把集合中的所有元素全部取出用专业术语讲为迭代 iterator接口常用方法:增强for循环格式为: for(元素的数据类型 变量 : Collection集合or数组) 练习:
int[] arr = {3,5,6,87};
//使用增强for遍历数组
for(int a : arr){//a代表数组中的每个元素
System.out.println(a);
}
泛型
可以在类或方法中预支地使用未知的类型 泛型的好处泛型的定义定义格式 修饰符 class 类名<代表泛型的变量> { } 含有泛型的方法定义格式 修饰符 <代表泛型的变量> 返回值类型 方法名(参数){ } 含有泛型的接口定义格式 修饰符 interface接口名<代表泛型的变量> { } 泛型的通配符当使用泛型类或者接口时,传递的数据中,泛型类型不确定,可以通过通配符<?>表示。但是一旦使用泛型的通配符后,只能使用Object类中的共性方法,集合中元素自身方法无法使用 泛型的上限: 泛型的下限:
|