java string 转list实体
时间: 2023-05-03 11:05:58 浏览: 115
在Java中,我们可以使用split()方法将字符串(String)转换成一个数组(Array),可以再将数组转换成列表(List)。
具体实现方式如下:
1. 首先,将字符串使用split()方法进行分割,并得到一个字符串数组。
2. 接着,定义一个列表和一个for循环,将数组中的每个元素添加到列表中。
3. 最后,将列表返回即可。
下面是代码示例:
```
public List<String> stringToList(String str) {
List<String> list = new ArrayList<>();
String[] strArray = str.split(",");
for (String s : strArray) {
list.add(s);
}
return list;
}
```
在上面的代码示例中,我们通过split()方法将传入的字符串str分割成字符串数组strArray,然后使用for循环将每个元素添加到列表list中,最后返回列表。
需要注意的是,这种方法只适用于将字符串按照特定分隔符分割成列表,如果想将字符串转换成自定义实体类,需要进行相关的类型转换。
相关问题
java json String 转 list
要将Java中的JSON字符串转换为List列表,可以使用fastjson库的JSONArray类中的parseArray方法。首先,需要在代码中引入fastjson的jar包,然后按照下面的步骤进行操作:
1. 新建一个实体类,根据JSON数组的字段定义实体类的属性。可以使用@Data注解来自动生成getter和setter方法,使代码更加简洁。以下是一个示例实体类的代码:
```java
import lombok.Data;
import java.io.Serializable;
@Data
public class ImageInfoVO implements Serializable {
private static final long serialVersionUID = 1L;
private Integer artifactCount;
private String creationTime;
private Integer id;
private String name;
private Integer projectId;
private Integer pullCount;
private String updateTime;
}
```
2. 使用JSONArray类的parseArray方法将JSON字符串转换为List列表。在调用parseArray方法时,需要传入JSON字符串和实体类的class类型作为参数。以下是一个示例代码:
```java
import com.alibaba.fastjson.JSONArray;
import java.util.List;
String res = "[\n" +
" {\n" +
" \"artifact_count\": 3,\n" +
" \"creation_time\": \"2022-04-22T08:13:41.746Z\",\n" +
" \"id\": 30,\n" +
" \"name\": \"base/statistic-service-base\",\n" +
" \"project_id\": 2,\n" +
" \"pull_count\": 0,\n" +
" \"update_time\": \"2022-04-22T08:13:41.746Z\"\n" +
" },\n" +
" {\n" +
" \"artifact_count\": 1,\n" +
" \"creation_time\": \"2022-04-22T08:12:19.763Z\",\n" +
" \"id\": 29,\n" +
" \"name\": \"base/tomcat_ra\",\n" +
" \"project_id\": 2,\n" +
" \"pull_count\": 0,\n" +
" \"update_time\": \"2022-04-22T08:12:19.763Z\"\n" +
" }]";
List<ImageInfoVO> jsonList = JSONArray.parseArray(res, ImageInfoVO.class);
```
这样,你就可以将Java中的JSON字符串成功转换为List列表了。
java List<实体> 转List<String>
可以通过Java 8的Stream API来实现这个转换,具体代码如下:
```java
List<Entity> entityList = new ArrayList<>();
// 假设这里已经将 entityList 填充好了
List<String> stringList = entityList.stream().map(Entity::getName).collect(Collectors.toList());
```
上面的代码中,`Entity`是实体类,假设实体类中有一个`name`属性,类型为`String`。我们通过`entityList.stream()`方法将实体列表转换成流,然后使用`map(Entity::getName)`方法将每个实体的`name`属性提取出来,并转换成`String`类型;最后使用`collect(Collectors.toList())`方法将转换后的字符串列表收集到一个新的列表中。
阅读全文