List<List<String>>相当于一个二维数组取列数据
时间: 2023-11-11 08:47:42 浏览: 106
在 Java 中,List<List<String>> 不是二维数组,而是一个 List 对象,其中每个元素也是一个 List 对象。我们可以使用 get() 方法获取 List 中的元素,然后再使用 get() 方法获取该元素的子元素(也是一个 List 对象)中的元素。
例如,假设我们有一个 List<List<String>> 对象 data,其中包含了一些字符串数据。要获取第二列数据,可以这样做:
```
List<String> columnData = new ArrayList<String>();
for (List<String> row : data) {
columnData.add(row.get(1));
}
```
这里我们使用了一个 for-each 循环,遍历了 data 中的所有元素(即每一行数据),然后通过 get() 方法获取了每一行中的第二个元素(即第二列数据)。将这些数据存放到一个新的 List 对象 columnData 中,即为我们所需的第二列数据。
相关问题
C#List<List<string>>转成二维数组
将`List<List<string>>`转换为二维数组可以使用循环遍历,将内部的List<string>`转换为一维数组,再将这些一维数组添加到二维数组中。以下是一个示例代码:
```csharp
List<List<string>> data = new List<List<string>>
{
new List<string> {"A1", "B1", "C1"},
new List<string> {"A2", "B2", "C2"},
new List<string> {"A3", "B3", "C3"},
};
// 获取二维数组的行数和列数
int rowCount = data.Count;
int columnCount = data[0].Count;
// 初始化二维数组
string[,] array = new string[rowCount, columnCount];
// 遍历List,将每个内部的List<string>转换为一维数组,再添加到二维数组中
for (int i = 0; i < rowCount; i++)
{
for (int j = 0; j < columnCount; j++)
{
array[i, j] = data[i][j];
}
}
```
在这个例子中,我们首先获取了`List<List<string>>`的行数和列数,并创建了一个相同大小的二维数组`array`。然后,我们使用双重循环遍历`List<List<string>>`,将每个内部的`List<string>`转换为一维数组,再将其添加到二维数组中。最终,我们得到了一个二维数组`array`,其中包含了`List<List<string>>`中的所有数据。
java将二维数组字符串转为List<List<String>>
好的,您想要将一个二维数组字符串转换为一个List<List<String>>,您可以按如下方式完成转换:
```java
public static List<List<String>> fromString(String arrayString) {
String[] rows = arrayString.trim().split("],");
List<List<String>> result = new ArrayList<>();
for (String row : rows) {
row = row.replace("[", "").replace("]", "");
String[] elements = row.split(",");
List<String> rowList = Arrays.asList(elements);
result.add(rowList);
}
return result;
}
```
您可以将您想要转换的二维数组字符串作为参数传递给该函数即可。
阅读全文