使用 commons-beanutils 工具类

1.依赖

<!-- https://mvnrepository.com/artifact/commons-beanutils/commons-beanutils -->
<dependency>
    <groupId>commons-beanutils</groupId>
    <artifactId>commons-beanutils</artifactId>
    <version>1.9.3</version>
</dependency>
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>27.0.1-jre</version>
</dependency>


具体使用

//long[] 数组转 Long[] 数组
long[] lon = new long[]{1L, 2L, 3L};
Long[] convert = (Long[]) ConvertUtils.convert(lon, Long[].class);
for (Long item : convert) {
    System.out.println(item);
}

List to Array

// List to Array
List list = ImmutableList.of("1", "2", "3", "4", "5", "6");
String[] objects = (String[]) list.toArray(new String[list.size()]);
System.out.println(Arrays.toString(objects));

// 或则使用 stream
String[] ss = listStrings.stream().toArray(String[]::new);

Array to List

asList方法转化的数组是不可以有 add、remove 操作。此外,如果转化的对象是基础数据类型,整个充当一个 list 元素

Long[] loo = new Long[]{1L, 2L, 3L, 4L, 5L};
List<Long> longs = Arrays.asList(loo);

一般写法:

// guava写法  
List long2 = Lists.newArrayList(loo);
// JDK写法
List long2 = new ArrayList(Arrays.asList(loo));
// stream 写法
List<String> listStrings = Stream.of(arrays).collector(Collectors.toList());

当然也可以新建一个集合,把Arrays.asList转化后的集合通过集合addAll()或则Collections.addAll()添加到集合里。

集合排除空字符串或则Null

使用 JDK Collections 返回结果为 1

List list = Lists.newArrayList();
list.add("");
list.add(null);
list.add(1);
list.removeAll(Collections.singletonList(""));
list.removeAll(Collections.singletonList(null));
list.forEach(System.out::println);

使用 guava

// guava集合去空记录
List<String> gg = Lists.newArrayList();
gg.add("");
gg.add("");
gg.add("kjlj1");
gg.removeIf(item -> StringUtils.isEmpty(item));
System.err.println(Joiner.on(",").join(gg));

使用 JDK8

 // jdk1.8去空集合记录
 List<String> collect = gg.stream().filter(item -> {
 return !StringUtils.isEmpty(item);
 }).collect(Collectors.toList());
 System.err.println(Joiner.on(",").join(collect));
上次更新时间: 2024/5/7 05:59:02