Las nuevas funciones de Java8 deben instalarse en la secuencia (actualización continua)

¡Deja de decir tonterías y solo instálalo! ! !

Método distinto () de Stream (requiere equals () y hashCode ())

 List<PenBean> newPenBeanList = penBeanList.stream().distinct().collect(Collectors.toList());

Desduplicación según un atributo de objeto en lista

//根据user的account属性去重
List<User> list =users.stream().collect( Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> o.getAccount()))),ArrayList::new));

## 获取集合第一个对象 没有就返回为null;

```bash
list.stream().findFirst().orElse(null);

Obtener todos los valores de los atributos de los objetos de la lista.

//获取PmsProductCategory集合里面PmsProductCategory的id
List<Long> cid = categories.stream().map(PmsProductCategory::getId).collect(Collectors.toList());

la lista se agrupa de acuerdo con un determinado atributo del objeto

//按照pmsProduct的productCategoryId进行分组
Map<Long, List<PmsProduct>> productMap = pmsProducts.stream().collect(Collectors.groupingBy(PmsProduct::getProductCategoryId));
/**
 * String字符串转成List<Long>数据格式
 * String str = "1,2,3,4,5,6" -> List<Long> listLong [1,2,3,4,5,6];
 *
 * @param strArr
 * @return
 */
private List<Long> stringToLongList(String strArr) {
    
    
    return Arrays.stream(strArr.split(","))
                    .map(s -> Long.parseLong(s.trim()))
                    .collect(Collectors.toList());
}

Convertir colección de tipo largo en colección de tipo String

Set<String> skuStr= skuIds.stream().map(String::valueOf).collect(Collectors.toSet());

Ordenar según un determinado atributo del objeto

list.stream().sorted(Comparator.comparing(Product::getId).reversed()).collect(Collectors.toList());

Obtener una colección de una propiedad de objeto

List<Long> orderId = omsOrderPage.getRecords().stream().map(OmsOrder::getId).collect(Collectors.toList());

Supongo que te gusta

Origin blog.csdn.net/weixin_45528650/article/details/109153245
Recomendado
Clasificación