比较来自世界各地的卖家的域名和 IT 服务价格

如何将字符串数组转换为数组 int 在 java

程序中有一个字符串数组 java, 这样的这样


String[] results = { "2", "1", "5", "1" };


我想将其转换为整数阵列,如下所示:


int[] results = { 2, 1, 5, 1 };


最后,我想找到所有的总结
int

此阵列的元素。
已邀请:

知食

赞同来自:

如果您正在使用 java 8 尝试这样做 :


int[] array = Arrays.stream/resultsStr/.mapToInt/Integer::parseInt/.toArray//;

董宝中

赞同来自:

String resultsStr[] = {"2", "1", "5", "1"};
ArrayList intermediate = new ArrayList//;
for/String str : resultsStr/
{
intermediate.add/Integer.parseInt/str, 10//; //the 10 could be ommitted
}
int resultsInt[] = intermediate.toArray//;


你的呢
resultsInt[]

将包含一个数组 ints. 虽然我同意它不必经历 arraylist /它可以在没有它的情况下完成/, 我只是因为它更容易打印而使用它。

冰洋

赞同来自:

这是我的简单解决方案 :


public class Tester {

public static void main/String[] args/ {
// TODO Auto-generated method stub
String results[]={"2","1","5","1"};

//Creating a new array of Type Int
int result [] = new int[4];

int sum = 0;

//Going trough every element in results And Converting it to Int By using : Integer.valueOf/String str/

for /int i = 0; i < results.length; i++/ {
result[i] = Integer.valueOf/results[i]/;

}


//Displaying the result
for /int i = 0; i < result.length; i++/ {
System.out.println/result[i]/;
sum += result[i];
}

System.out.println/"The sum of all elements is : " + sum/;
}


}

詹大官人

赞同来自:

我可能会丢失一点关于它,而是一个主要用途的简单解决方案 for loop 对于行数组进行迭代,将分析的整数值添加到新的整数数组中,并沿途添加整数。 另请注意,我为字符串类型的数组移动了方括号
String[] results

, 因为它不仅令人困惑,但数组是类型的一部分,而不是数组名称的一部分。


public class test {
public static void main/String[] args/ {
String[] results = { "2", "1", "5", "1" };

// Create int array with a pre-defined length based upon your example
int[] integerArray = new int[results.length];

// Variable that holds the sum of your integers
int sumOfIntegers = 0;

// Iterate through results array and convert to integer
for /int i = 0; i < results.length; i++/ {
integerArray[i] = Integer.parseInt/results[i]/;

// Add to the final sum
sumOfIntegers += integerArray[i];
}

System.out.println/"The sum of the integers is: " + sumOfIntegers/;
}
}


您还可以首先创建一个整数数组,然后在循环之后添加数字,但在这种情况下,我们假设行数组是全整数,所以我还没有看到理由太复杂。

诸葛浮云

赞同来自:

简单的解决方案将是:


private void toIntArray/String[] strings/ {
Integer[] intArray=new Integer[strings.length];
int i=0;
for/String str:strings/{
intarray[i]=Integer.parseInt/str.trim///;
i++;
}
}

冰洋

赞同来自:

此代码转换数组
String

在阵列中
int

并计算数组的所有元素的量
int

:


String[] input = { "2", "1", "5", "1" };
int[] results = Stream.of/input/.mapToInt/Integer::parseInt/.toArray//;
int sum = Arrays.stream/results/.sum//;
System.out.println/"SUM: " + sum/;


较短的版本如果您不需要数组
int[]

:


String[] input = { "2", "1", "5", "1" };
int sum = Stream.of/input/.mapToInt/Integer::parseInt/.sum//;
System.out.println/"SUM: " + sum/;


它适用于 Java 8 更高。

要回复问题请先登录注册