1、集合框架
List:有序
ArrayList:长度可变的数组,便于查找和访问
LinkedList(Node):双向链表,便于插入和删除
Set:不重复
HashSet:HashMap的key的hashCode()和equals()方法共同保证不重复
Map:Entry<k,v>键值对
遍历:
List:fori,增强for,迭代器
Set:增强for,迭代器
Map:entrySet(),keySet(),values()
泛型:
限定了集合类型的输入和输出
常用方法:
增:add();/put();
删:remove();
改:set();
查:get();
Collections:CompareAble,new CompareTo{int compare(){}}
2、实用类
包装类:方便泛型使用,与String类型的转换
装箱:把基本数据类型变为包装类型
拆箱:把包装类型转换为基本数据类型
Integer a=1;//自动装箱
int b=new Integer(12);//自动拆箱
Math类:数学公式类
Random类:各种随机数
枚举类:特殊的类,私有构造,直接写的值都是当前类型,唯一防反射
String:底层是字符数组常量,不可改变
indexOf();split();charAt();subString();toCharArray();getBytes();
StringBuffer:线程安全,较慢
append();toString();
StringBuilder:单线程(线程不安全),较快
Data:UTC时间
SimpleDataFormat:"yyyy-MM-dd HH:mm:ss"
3、io流:InputStream、OutputStream、Reader、Writer
普通流:FilInputStream,FileOutputStream,FileReader,FileWriter
转换流:InputStreamReader,OutputStreamWriter\转换流即字符编码
高级流:
缓冲流:把(字符)流在闲时先一步读取缓存
BufferedReader,BufferedWriter
二进制流:
先把要传输的图片、音频、视频等先放入文件流
把文件流装入DataInputStream...
对象流:
对象要先实现Serializable接口
ObjectInputStream,ObjectOutputStream
读取过程:
1.把文件放入文件输入流中
2.read(),read(b)...(放入字符串)
3.关闭流
写入过程:
与上一步基本类似
4、多线程
继承Thread类、实现Runnable接口
star()和run()的区别:star()是真正实现多线程的方法
实现Callable接口:call()方法有返回值(泛型)
FutureTask task=new FutureTask(Callable接口的实现类的对象);
Thread t=new Thread(task);
t.start();
task.get(); //获取返回值
5、反射:运行时获取对象、操作对象及其属性和方法
获取类的三种方法:
类型.class;
对象.getClass();
Class.forName("类的全路径");
获取方法或属性:
构造方法 (getDeclaredConstructor()) newInstance();
普通方法 (getDeclaredMethod("方法名",参数列表)) invoke();
属性 (getDeclaredField("属性名")) set();
权限不够的需要执行 setAccessible(true);
6、xml和json
xml格式:
<?xml version="1.0" charset="UTF-8"?>
根标签、一一对应(有开头、有结束)
xml作用:传输数据、配置文件
DOM获取:
1. DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance;
2. DocumentBuilder builder=factory.newDocumentBuilder();
3. Document document=builder.parse("xml路径");
4. Element e=document.getElementsByName("标签名称");
5. e.item(0);
保存:
1. TransformFactory f=TransformFactory.newInstance();
2. Transform tf=f.newTransform();
3. DomSource s=new DomSource(document);
4. StreamResult sr=new StreamResult(writer对象装入目标地址);
5. tf.tranform(s,sr);
json:对象要实现Serializable接口(序列化)
对象转字符串:JSON.toJSONString(对象);
对象转json:JSON.parseObject(json串);
json转对象:JSON.toJavaObject(json对象,java对象类型.class);
7、正则表达式(规则表达式)
匹配规则
Java高级特性知识框架
最新推荐文章于 2023-02-15 08:43:03 发布