1. Switch 匹配类型: char byte short int String
不匹配类型: double float long boolean Object
2 System.arraycopy(arr,0,brr,0,arr.length);
Arrays.sort(arr);
3. 反射从实例化对象开始就抛出异常了
4. 数据库:
mysql -u 用户名 -p 回车进入mysql cmd页面
CREATE DATABASE 数据库名; //创建数据库
DROP DATABASE 数据库名;//删除数据库
USE 数据库名; //使用数据库
SHOW TABLES';// 查看数据库中表格
CREATE TABLE 表名(
列名1 类型(长度),
列名2 类型(长度)
);//创建表格
DESC 表名 // 查看表格
ALTER TABLE 表名 DROP 列名; //删除列
ALTER TABLE 表名 ADD 列名 类型(长度);//增加列
ALTER TABLE 表名 CHANGE 原列名 新列名 新类型(长度);//修改列名类型
ALTER TABLE 表名 MODIFY 列名 新类型(长度);//修改类型
5.集合:
队列: 队列是数据结构中比较重要的一种类型, 它支持FIFO, 尾部添加, 头部删除
队列有两种: 单队列 循环队列
单队列是常见的队列, 每次添加元素都是添加到队尾
循环队列是队尾添加满元素时,若队首有空位,添加到队首
Queue方法:
add(E) offer(E) 禁止添加 null 元素, 否则会报空指针NullPointerException
不同在于 添加失败(队列已满) add(E) 会报运行时错误 而offer(E)不会报错 只会返回false
remove() poll() 队列为null 时 remove()会报NoSuchElementException 而poll()只会返回null
element() peek() 获取但不删除 队列为空element()抛出异常 peek()返回null
其他关于Queue知识可以参考:https://www.cnblogs.com/mercuryli/p/4636231.html
ArrayList 基于数组实现的 是动态数组 容量能自动增长 线程不安全
方法: set(int, E) add(E) add(int, E) addAll(Collection) addAll(int, Collection) get(int) remove(int)
remove(obj) removeRange(int fromIndex,int toIndex)
调整容量 ensureCapacity 增加0.5倍加1
LinkedList 基于链表实现的 增加了首位操作
Stack LIFO 堆栈 继承vector
方法: push() search() peek() pop()
Vector 线程安全 和 ArrayList 操作相同
HashSet 存放无序的,不可重复的元素
判断方法: 首先比较hashCode() 返回值 不同判定为不同对象 相同判断equals() true 相同对象 false 不同对象
方法: add() remove() ..
TreeSet 存放的元素排序
方法: add() remove() ..
Hashtable 同步 键和值都不能为null
方法:put() remove() get() keySet()
HashMap 不同步 null 可以做键或值
TreeMap 键不能为null
今天就这些吧