我有一个String [],其中每个元素都可以转换为整数。我可以将它转换为int []的最佳方法是什么?
int[] StringArrayToIntArray(String[] s)
{
... ? ...
}
答案 0 :(得分:11)
public static int[] StringArrToIntArr(String[] s) {
int[] result = new int[s.length];
for (int i = 0; i < s.length; i++) {
result[i] = Integer.parseInt(s[i]);
}
return result;
}
只需遍历字符串数组并转换每个元素。
注意:如果您的任何元素无法解析为int
,则此方法将引发异常。为了避免这种情况发生,每次拨打Integer.parseInt()
都应该放在try/catch
块中。
答案 1 :(得分:2)
使用Guava:
return Ints.toArray(Collections2.transform(Arrays.asList(s), new Function<String, Integer>() {
public Integer apply(String input) {
return Integer.valueOf(input);
}
});
不可否认,这不是最干净的用途,但由于Function
可以在其他地方宣布它可能仍然更清洁。
答案 2 :(得分:2)
现在Java终于赶上了函数式编程,有了更好的答案:
if( mysql_num_rows( $rst ) ){
while(false !== ( $res = mysql_fetch_array($rst) ) ){
echo $res[2];
}
}else{
echo '<img src="imagini/banner.png">';
}
答案 3 :(得分:0)
这是将String转换为Int的简单方法。
String str = "15";
int i;
i = Integer.parseInt(str)
以下是一个使用用户输入进行数学计算的示例:
int i;
String input;
i = Integer.parseInt(str)
input = JOptionPane.showMessageDialog(null, "Give me a number, and I'll multiply with 2")
JOptionPane.showMessageDialog(null, "The number is: " + i * 2);
输出:
弹出窗口:一个带有输入框的对话框,上面写着:给我一个数字,然后我将它与2相乘。
弹出窗口:数字为:inputNumber * 2