1.类中代码执行顺序
优先执行static里的内容,此时执行顺序按代码写的位置先后执行,只有在创建对象时,才会执行非静态代码区的内容
class app{ static User = new User(); //执行1 static { //todo //执行2 } //如果没有static,那上面都不会执行
Set<String> collect = originList.stream().map(ImsYiduCardBin::getBinNum).collect(Collectors.toSet());
2.获取当时日期时间值
LocalDateTime.now().format(DateTimeFormatter.ofPattern("Y-M-d H:m:s"))
3.集合转化
//获取对象中某个字符的集合 List<String> fit = persons.stream().filter(u->u.getAge()==15).map(Person::getName).collect(Collectors.toList()); //按条件将对象里满足条件的组成map集合 Map<String,Integer> mp2 = persons.stream().filter(u->u.getAge()==15 ).collect(Collectors.toMap(Person::getName,Person::getAge)); Map<String,Person> mps = persons.stream().filter(myages.contains() ).collect(Collectors.toMap(Person::getName,(p)->p)); Map<String,Person> bs = new HashMap<>(); persons.stream().filter(u->u.getAge()>=15).collect(Collectors.groupingBy(Person::getName)).forEach((k,v)->{ System.out.println(v); }); System.out.println(mps.get("two").getBirth());
4.Decimal与Float之间的转换,四舍五入的写法
//flat转Decimal Float a = 3.1415926f; BigDecimal bTof = new BigDecimal(a.toString()); System.out.println("float转bigDecimal:"+bTof); //Decimal转Float BigDecimal bb = new BigDecimal("3.1516236"); Float bf = bb.floatValue(); System.out.println("bigDecimal转float:"+bf); //4舍五入方法一 String afterFour = new DecimalFormat(".00").format(bb); System.out.println(afterFour); //四舍五入方法二 String cc = String.format("%.3f",a); System.out.println(cc);