Java全栈学习笔记27
# 工具类
## Object
所有类的父类,或者所有的超类,基类。所有对象都有Object类中的方法。
toString() 把该对象转换为字符串类型
equals() 比较两个对象的属性值是否相同。
==比较两个变量是不是同一个对象
clone() 复制对象
在控制台或其他位置直接输出对象,调用的是toString()方法
## Math
最终类:不能被继承
里面的方法都是静态方法
静态导入(导包的时候)
random() 获取随机数
Math.random() * 可能出现的随机数中的总数 + 最小的数
Random random = new Random();
nextInt([bound]) 获取int类型的随机数
## Date
Date date = new Date();
Date date = new Date(long time);
getTime() 获取毫秒数
before() 当前日期对象是否在指定日期时间之前
after() 当前日期对象是否在指定日期时间之后
## Calendar
日期工具类。抽象类,getInstance() 实例化对象
getTimeInMillis() 获取毫秒数
getTime() 获取Date
Local
LocalTime 时间
LocalDate 日期
LocalDateTime 日期和时间
now() 获取当前日期/时间方法
of() 通过方法重载获取指定日期的对象
format() 进行格式化
获取毫秒数
java
LocalDateTime.now()
.atZone(ZoneId.systemDefault())
.toInstant()
.toEpochMilli();
SimpleDateFormat 日期格式化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
y: 年
M: 月
d: 日
H: 时
m: 分
s: 秒
format 把date转换为指定格式的字符串
parse 把指定格式的字符串转换为日期
# 集合
集合框架:是为表示和操作集合而规定的一种统一的,标准的体系结构
集合都包含三大块内容
接口:即表示集合的抽象数据类型。接口提供了让我们对集合中所表示的内容进行单独操作的可能。
实现:也就是集合框架中接口的具体实现。实际它们就是那些可复用的数据结构。
算法:在一个实现了某个集合框架中的接口的对象上,完成某种有用的计算的方法,例如查找、排序等。
## Collection
采用线性列表的方式存储数据,长度可变。有序,可重复
### List
ArrayList
new ArrayList();
new ArrayList(Collection)
new ArrayList(int capacity);
容量,既然集合是长度可变,开始初始化集合的时候,实际元素个数为0。
LinkedList
Vector
#### 方法
size() 集合的长度。集合中元素的个数
add() 为集合添加元素
add(int,obj) 在指定位置添加元素
addAll(Collection) 把其他集合中的所有内容都添加到当前集合的末尾
get(index) 根据索引获取指定元素
clear() 清空集合
contains() 查看集合中是否包含某个对象
如果判断是对象而非基本数据类型,它是根据对象的属性值是否相同判断是否为同一个对象
containsAll(Collection) 判断当前集合是否包含参数集合中的所有数据
indexOf(obj) 根据元素获取索引,如果不存在返回-1
isEmpty() 判断集合长度是否为0;
remove(index/obj) 根据索引移除指定元素。
removeAll(list) 移除和传入的结合相同的元素
removeIf(Predicate) 判断断言是否返回为true,为true移除,否则不移除
函数参数化 编程范式一种转变
set(index,el) 把指定的index位置的元素设置为el
sort() 排序
nums.sort(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
// TODO Auto-generated method stub
student.setStudId(student.getStudId() + 1);
return (int)o2 - (int)o1;
}
});
subList 集合截取
toArray() 集合转换成数组
数组可以转换为集合吗
数组 asList(); 如果基本数据类型转数组的时候,数组的元素和集合元素不对应,集合中存储就是一整个数组,集合的类型(集合中存储的元素的类型)不能是基本数据类型
## Map
采用key-v 键值对存储数据。 key-映射-v 无序