如果可以将字符串(ArrayList<String[]>)
的arraylist转换为整数(int[])
的数组,是否可以将字符串(ArrayList<String[]>)
的数组的arraylist转换为整数(int[])
的数组?
答案 0 :(得分:8)
在Java 8中:
container-fluid
由于问题是使用list.stream().mapToInt(Integer::parseInt).toArray();
代替List<String[]>
编辑的,因此解决方案是:
List<String>
答案 1 :(得分:4)
我已根据您编辑的答案修改了代码,如果这是您想要的,请回复。
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
ArrayList<String[]> strArrayList= new ArrayList<String[]>();
String[] str1={"16","1421","1577"};
String[] str2={"15","1451","1461","6556"};
String[] str3={"157","8751","1136","556","879"};
strArrayList.add(str1);
strArrayList.add(str2);
strArrayList.add(str3);
int sizeOfArr=0;
int i=0;
for (String[] s : strArrayList)
{
sizeOfArr+=s.length;
}
int[] ArrayRes = new int[sizeOfArr];
for (String[] s : strArrayList)
{
if(s.length>0){
for (String s1 : s){
ArrayRes[i] = Integer.parseInt(s1);
System.out.println(ArrayRes[i]);
i++;
}
}
}
}
}
答案 2 :(得分:3)
运行以下代码,我希望它符合您的要求。
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
ArrayList<String> strArrayList= new ArrayList<String>();
strArrayList.add("1");
strArrayList.add("11");
strArrayList.add("111");
strArrayList.add("12343");
strArrayList.add("18475");
int[] ArrayRes = new int[strArrayList.size()];
int i = 0;
int x = 0;
for (String s : strArrayList)
{
ArrayRes[i] = Integer.parseInt(s);
System.out.println(ArrayRes[i]);
i++;
}
}
}
输出:
1
11
111
12343
18475
答案 3 :(得分:1)
除了我的评论之外,您还需要了解如何从2D到1D数组进行映射。
以下建议导致Integer[]
而不是int[]
,但您可能不会担心:
public static void main(String[] args) {
ArrayList<String[]> arrList = new ArrayList<String[]>();
//fill it
arrList.add(new String[] {"11","12","13","14","15"});
arrList.add(new String[] {"21","22","23","24","25"});
arrList.add(new String[] {"31","32","33","34","35"});
arrList.add(new String[] {"41","42","43","44","45"});
arrList.add(new String[] {"41","52","53","54","55"});
//convert it
ArrayList<Integer> ints = new ArrayList<Integer>();
for (String[] array : arrList) {
for (String str : array) {
ints.add(Integer.parseInt(str));
}
}
Integer[] result = ints.toArray(new Integer[] {});
for (int i : result)
System.out.println(i);
}
答案 4 :(得分:0)
可以将所有字符串正确地解析为整数。
遍历列表并在列表中遍历数组。将字符串解析为整数(例如,使用Integer.parseInt(someString);
)并将整数值存储在整数数组中。
当然,您必须在列表中找到初始化数组的值总数。