Object转list数组

本文详细介绍了一种从SQL查询结果中将Object数据转换为List<RepairDto>的方法,通过遍历和属性复制实现数据类型转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

业务需求,要将获取出来的Object数据转成list,放到前端,源码如下

List<Object> list = sqlQuery.list();
	    List<RepairDto> result = Lists.newArrayListWithCapacity(list.size());
	    System.out.println("1");
	    for (Object object : list)
	    {
	      Object[] objects = (Object[])object;
	      RepairDto deviceDTO = new RepairDto();
	      BeanUtils.copyProperties(objects[0], deviceDTO);
	      deviceDTO.setDeviceName(objects[0] == null ? "" : String.valueOf(objects[0]));
	      deviceDTO.setDescription(objects[4] == null ? "" : String.valueOf(objects[4]));
	      deviceDTO.setRepairdes(objects[5] == null ? "" : String.valueOf(objects[5]));
	      deviceDTO.setTemplateName(objects[1] == null ? "" : String.valueOf(objects[1]));
	      deviceDTO.setTypeName(objects[2] == null ? "" : String.valueOf(objects[2]));
	      result.add(deviceDTO);
	    }
		return result;

 

### 将 Object 数组转换为 String 列表的方法 在 Java 中,有多种方式可以将 `Object` 类型的数组转换为 `String` 类型的列表。以下是几种常见且有效的方式: #### 方法一:使用 `Arrays.asList()` 和 `stream().map()` 通过先将 `Object[]` 转换为列表再映射至字符串列表是一个直观的选择。 ```java import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { Object[] objectArray = {"A", "B", "C"}; List<String> stringList = Arrays.stream(objectArray) .map(Object::toString) .collect(Collectors.toList()); System.out.println(stringList); } } ``` 这种方法利用了 Java 8 的 Stream API 提供的强大功能来简化操作[^3]。 #### 方法二:遍历并手动添加到列表 对于不支持最新版本特性的环境,可以选择传统循环的方式来实现相同的效果。 ```java import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) { Object[] objectArray = {"D", "E", "F"}; List<String> stringList = new ArrayList<>(); for (Object obj : objectArray) { stringList.add(obj.toString()); } System.out.println(stringList); } } ``` 此方法虽然较为冗长,但在兼容性和理解上更为直接[^1]。 #### 方法三:借助第三方库(如 Apache Commons Lang) 如果项目已经引入了诸如 Apache Commons 这样的实用工具包,则可以直接调用其提供的便捷函数完成转换工作。 ```xml <!-- Maven依赖 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> </dependency> ``` ```java import org.apache.commons.lang3.ArrayUtils; // ... Object[] objectArray = {"G", "H", "I"}; List<String> stringList = ArrayUtils.isEmpty(objectArray) ? new ArrayList<>() : Arrays.asList(ArrayUtils.toObject((Object[]) objectArray)) .stream() .map(Object::toString) .collect(Collectors.toList()); ``` 这种方式不仅提高了代码可读性还增强了健壮性[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值