day20200903---Collectors.groupingBy & hashcode-equals & git提交当前修改到别的分支
统计集合中a,b,c三类的个数。 Map<String, List<Person>> collect = plist.stream().collect(Collectors.groupingBy(Person::getType, Collectors.toList()));
peek用于改变对象元素,map用于由对象生成别的对象,比如maptoint取出每个元素内的某个int类型的属性。
1. 使用@Getter @Setter @ToString代替@Data并且自定义equals(Object other) 和 hashCode()方法,比如有些类只需要判断主键id是否相等即足矣。
2. 或者使用在使用@Data时同时加上@EqualsAndHashCode(callSuper=true)注解。
3.在大集合内放置元素,有时候需要判断是否重复,hashCode可以快速确定元素不存在的情况(布隆过滤器)。如果通过hashcode在集合中找到了对应的元素
则需要通过equals进一步判断,是否是要找的那个元素。如果两个对象是同一个对象,那么这两个对象的hashcode一致。
如果两个对象的hashcode一样,那么这两个对象也未必是同一个对象。
1、通过git stash将工作区恢复到上次提交的内容,同时备份本地所做的修改
git stash
2、然后切换至B分支
git checkout B
3、从git栈中获取到最近一次stash进去的内容,恢复工作区的内容,获取之后,会删除栈中对应的stash
git stash pop
4、在进行正常的提交代码步骤即可
git add /src/main/..
5、git commit -m "zzz"
6、git pull origin 分支名称
7、git push origin 分支名称