GitHub

Java踩坑

  • Map<String, Integer> users = new HashMap<String, Interger>(); 
    在循环的时候,如果不指定 Map 默认类型,则取出来的是 Object
  • 类型 .getClass().getName() 来获取数据类型
  • java 的 switch 不支持 string 比较,switch支持int、char类型、枚举类的筛选
  • JsonUtils.getJson(map); 返回json字符串
  • java的 @Override 覆写:若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法
  • 重载:重载的时候,方法名要一样,但是参数类型或个数不一样,返回值类型可以相同也可以不相同
  • java 将 Object转换为 json 是报错 multiple name 变量名 原因:子类与父类中有相同的字段名(变量)引起的 参考
  • java 在新建一个 .java 文件的时候 public static void main(String[] args) 如果没有String[] args是不能运行的
  • BigDecimal.add()方法不会对自身进行改变 
    BigDecimal amount = new BigDecimal(0);
    amount.add( new BigDecimal(6) ); //这样写amount的值不会发生变化
    amount = amount.add( new BigDecimal(6) ); //这才能正确赋值
  • Map.keySet() 方法出来的值是随机的
  • 整型比较值否相等
    Integer num = 7; return num.equals(7); // boolean
  • 判断字符串值是否为空
    StringUtils.isNotEmpty(null) = false
    StringUtils.isNotEmpty("") = false
    StringUtils.isNotEmpty(" ") = true
    StringUtils.isNotEmpty("         ") = true
    StringUtils.isNotEmpty("bob") = true
    StringUtils.isNotEmpty(" bob ") = true

    还有 isNotBlank 等用法 参考

  • SpringWeb 支持枚举类自动转换,前端传对应的字符串就行 枚举类对应的变量名
  • 浅拷贝和深拷贝
    用 list.addAll() 方法
    List<Person> destList=new ArrayList<Person>();  
    destList.addAll(srcList);  

    其他方法 参考

posted @ 2018-07-27 14:00  長风  阅读(245)  评论(0编辑  收藏  举报