1.浮点数处理
浮点数之间的等值判断,基本数据不能使用==,包装数据类型不能使用equals来判断
BigDecimal的等值比较应该使用compareTo()方法,不能使用equals();
禁止使用构造方法BigDecimal(double)的方式把double对象转化为Bigdecimal对象
2.日期类型处理
Java中传统日期类型
Date:表示特定的瞬间,精确到毫秒
SimpleDateFormat:对日期格式化
传统日期API问题
1.所有的日期类型都是线程不安全的
2.日期,时间,时间戳没有明确对应的类
3.对于格式化和解析的需求
JDK8新增API的优势
1.线程安全
2.时间和日期都有相应的类
3.在所有的类中,方法都被明确定义以完成相同的行为
4.所有新的日期、时间API类都实现了一系列通用的方法以完成通用任务
日期格式化需要注意的问题
1.日期格式化时,传入patten中表示年份统一使用小写的y
2.在日期格式中分清楚大写的M和小写的m,大写的M和小写的h分别指代的意义
3.获取当前毫秒值:System.currentTimeMillis(),System.nanoTime,JDK8中,针对统计时间等场景,推荐使用Instant类。
控制语句只switch
1.每个case要通过continue/break/return 等来终止
2.要么注释说明程序将继续执行到哪个case为止
3.在一个switch块,有且default必须放在最后
4.switch括号内的变量类型必须进行null判断
控制语句规约
在if/else/for/while/do语句中必须使用大括号
表达异常的分支时,少用if-else
控制语句好习惯
不要再其他表达式(尤其是条件表达式)插入赋值语句。
不要再条件判断中执行其他复杂的语句以提高可读性
避免使用反逻辑符
高并发场景下控制语句规约
避免使用“等于”判断作为中断或退出的条件。使用大于或者小于替代。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)