jdk8:函数编程 lambda表达式
接口定义具体实现的方法:用public defalut 修饰
map遍历:
HashMap<String, Object> hashMap = new HashMap<String, Object>();
hashMap.put("a", "b");
hashMap.forEach(new BiConsumer<String, Object>() {
@Override
public void accept(String key, Object value) {
System.out.println(key + "======" + value);
}
});
日期:Instant 代替 Date;LocalDateTime 代替 Calendar;DateTimeFormatter 代替 SimpleDateFormat
抽象方法定义 不要加修饰符(public...)
1.常量命名大写 String MAX_COUNT="1";
2.接口定义方法 不要增加修饰符 如 (正例)Sting a();(反例)public String a();
3.包名不要有负数格式 如 (反例)utils
4.rpc返回 数据库查询;(调用返回不确定类型时) 基本类型用包装类型接收
5.对象作为map key 需重写hashCode 和 equals
6.list 中subList 返回原list的部分视图,最终反映到 原list
7.适配器模式:
String[] str = new String[];
List list = Arrays.asList(str);
将原数组类型 适配 集合类型, 操作数组 list 也随之改动;操作list本身方法,则运行时异常
8.if()else() 避免超过三次 可用卫语句 策略模式 状态模式实现
9.try{}catch{}避免循环体内;不要在finally中return;