java字符串集合转对象集合
时间: 2023-05-19 11:03:08 浏览: 231
可以使用Java 8中的Stream API来实现字符串集合转对象集合,示例代码如下:
List<String> stringList = Arrays.asList("1", "2", "3");
List<Integer> integerList = stringList.stream().map(Integer::valueOf).collect(Collectors.toList());
这段代码将字符串集合转换为整数对象集合。
相关问题
javajson字符串转对象集合
在Java中,将JSON字符串转换成对象集合通常需要使用JSON处理库,比如Google的Gson或Jackson。以下是使用Gson库进行转换的一个基本示例:
首先,你需要在项目中添加Gson库的依赖。如果你使用Maven,可以在`pom.xml`中添加如下依赖:
```xml
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.6</version> <!-- 请检查最新的版本号 -->
</dependency>
```
然后,可以使用Gson类的`fromJson`方法来进行转换。假设你有一个JSON数组的字符串,并且你想要将这个字符串转换为特定类型对象的集合,以下是一个示例代码:
```java
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
public class JsonExample {
public static void main(String[] args) {
String jsonStr = "[{\"name\":\"张三\",\"age\":30},{\"name\":\"李四\",\"age\":25}]";
// 定义集合中元素的类型
Type collectionType = new TypeToken<List<Person>>() {}.getType();
Gson gson = new Gson();
// 将JSON字符串转换为List集合
List<Person> personList = gson.fromJson(jsonStr, collectionType);
// 输出转换结果
for (Person person : personList) {
System.out.println(person.getName() + " - " + person.getAge());
}
}
// 假设有一个Person类
public static class Person {
private String name;
private int age;
// getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
}
```
在上述示例中,`Person`类需要根据JSON对象中的字段来定义相应的属性和访问器方法。`fromJson`方法的第二个参数使用`TypeToken`来动态获取集合的类型信息,这允许你将JSON数组转换为任何类型的集合。
字符串集合转对象集合
可以使用Java 8的Stream API来实现字符串集合转对象集合。假设我们有一个字符串集合,每个字符串表示一个Person对象,格式为"name-age-gender",我们可以使用以下代码将其转换为Person对象集合:
```
List<String> personStrings = Arrays.asList("Alice-25-Female", "Bob-30-Male", "Charlie-35-Male");
List<Person> persons = personStrings.stream()
.map(str -> {
String[] parts = str.split("-");
return new Person(parts[0], Integer.parseInt(parts[1]), parts[2]);
})
.collect(Collectors.toList());
```
这里使用了Stream的map方法将每个字符串转换为一个Person对象,然后使用collect方法将所有Person对象收集到一个List中。
阅读全文