1.Math工具类
Math.sqrt() : 计算平方根
Math.cbrt() : 计算立方根
Math.pow(a, b) : 计算a的b次方
Math.max( a, b ) : 计算最大值
Math.min( a, b ) : 计算最小值
Math.abs() : 取绝对值
Math.ceil(): 天花板的意思,就是逢余进一
Math.floor() : 地板的意思,就是逢余舍一
Math.rint(): 四舍五入,返回double值。注意.5的时候会取偶数
Math.round(): 四舍五入,float时返回int值,double时返回long值
Math.random(): 取得一个[0, 1)范围内的随机数
2.Arrays工具类
Arrays.toString(a) //转成字符串
Arrays.sort(a) //排序
Arrays.sort(Object[] array, int from, int to) //指定数组,从下标from开始,到to结束
Arrays.equals(a,b) //比较一维数组
Arrays.deepEquals(a,b) //比较多维数组
Arrays.fill(Object[] array,Object object) //功能:可以为数组元素填充相同的值
Arrays.fill(Object[] array,int from,int to,Object object) //功能:对数组的部分元素填充一个值,从起始位置到结束位置,取头不取尾
Arrays.asList //转成List
Arrays.copyOfRange(原数组,开始下标,结束下标):对已有的数组进行截取复制,复制出一个左闭右开的数组
3.String 字符串
String
StringBuffer
StringBuilder
4.包装类
https://blog.csdn.net/qq_44715943/article/details/116331282?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164724221216780264044377%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164724221216780264044377&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-116331282.es_vector_control_group&utm_term=java%E5%8C%85%E8%A3%85%E7%B1%BB&spm=1018.2226.3001.4187
三大集合
Collection接口
├——-List 接口:元素按进入先后有序保存,可重复
│—————-├ LinkedList 接口实现类, 链表, 插入删除, 没有同步, 线程不安全
│—————-├ ArrayList 接口实现类, 数组, 随机访问, 没有同步, 线程不安全
│—————-└ Vector 接口实现类 数组, 同步, 线程安全
│ ———————-└ Stack 是Vector类的实现类
└——-Set 接口: 仅接收一次,不可重复,并做内部排序
├—————-└HashSet 使用hash表(数组)存储元素
│————————└ LinkedHashSet 链表维护元素的插入次序
└ —————-TreeSet 底层实现为二叉树,元素排好序
Map 接口 键值对的集合 (双列集合)(map没有继承collection)
├———Hashtable 接口实现类, 同步, 线程安全
├———HashMap 接口实现类 ,没有同步, 线程不安全-
│—————–├ LinkedHashMap 双向链表和哈希表实现
│—————–└ WeakHashMap
├ ——–TreeMap 红黑树对所有的key进行排序
└———IdentifyHashMap
5.List
ArrayList和LinkList
常用用法:
A:添加功能
boolean add(E e):向集合中添加一个元素
void add(int index, E element):在指定位置添加元素
boolean addAll(Collection<? extends E> c):向集合中添加一个集合的元素。
B:删除功能
void clear():删除集合中的所有元素
E remove(int index):根据指定索引删除元素,并把删除的元素返回
boolean remove(Object o):从集合中删除指定的元素
boolean removeAll(Collection<?> c):从集合中删除一个指定的集合元素。
C:修改功能
E set(int index, E element):把指定索引位置的元素修改为指定的值,返回修改前的值。
D:获取功能
E get(int index):获取指定位置的元素
Iterator iterator():就是用来获取集合中每一个元素。
E:判断功能
boolean isEmpty():判断集合是否为空。
boolean contains(Object o):判断集合中是否存在指定的元素。
boolean containsAll(Collection<?> c):判断集合中是否存在指定的一个集合中的元素。
F:长度功能
int size():获取集合中的元素个数
G:把集合转换成数组
Object[] toArray():把集合变成数组。
6.Set
HashSet和TreeSet,存放的数据不可重复
常用用法:
add() //添加
clear() //清除所有
contains()
isEmpty()
iterator()
remove() //删除
size()
7.Map
Hashmap和Treemap
Map基本操作:
map.size() //长度
map.put(key,value) //添加key和value,如果key存在,则覆盖原有的value
map.remove(key) //删除key和key对应的value
map.get(key) //获取key所对应的value
map.getOrDefault(key,自定义值) //若表中存在key,则返回对应的value,不存在,则返回自定义值
map.getOrDefault("aa",-1)//key=aa不存在,所以返回默认value -1
map.containsKey("aa") //判断key是否存在
map.containsValue(1) //判断value是否存在
map.replace(key,value) //若表中存在key,则替换,若不存在,则不操作
8.Stack
Stack<类型> stack =new Stack<类型>()
基本操作:
push( num) //入栈
pop() //栈顶元素出栈
empty() //判定栈是否为空
peek() //获取栈顶元素
search(num) //判端元素num是否在栈中,如果在返回1,不在返回-1。
9.Queue
add 增加一个元素 如果队列已满,则抛出一个IllegalSlabEepeplian异常
remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
offer 添加一个元素并返回true 如果队列已满,则返回false
poll 移除并返问队列头部的元素 如果队列为空,则返回null
peek 返回队列头部的元素 如果队列为空,则返回null
put 添加一个元素 如果队列满,则阻塞
take 移除并返回队列头部的元素 如果队列为空,则阻塞
https://blog.csdn.net/zhangqunshuai/article/details/80660974?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164724423616780271978581%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164724423616780271978581&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-3-80660974.es_vector_control_group&utm_term=java%E9%9B%86%E5%90%88&spm=1018.2226.3001.4187
https://blog.csdn.net/feiyanaffection/article/details/81394745?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164724423616780271978581%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164724423616780271978581&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-81394745.es_vector_control_group&utm_term=java%E9%9B%86%E5%90%88&spm=1018.2226.3001.4187