如何将数字字符串标记化为 int 数组
How to tokenize from a String of numbers to an int array
我有一个这样的字符串
String s=1956;
并想将此 String
转换为 int[]
数组
[1,9,5,6];
有什么建议吗?
一个选项是
char[] nums = s.toCharArray();
int[] parsed = new int[nums.length];
for (int i = 0; i < nums.length; ++i){
parsed[i] = Integer.parseInt(String.valueOf(nums[i]));
}
您可以使用 String
的 split
方法将其转换为 String[]
,然后您可以迭代它调用 Integer.parseInt
来填充 int[]
我会这样做:
int[] digits = new int[s.length()];
for (int i = 0; i < digits.length; ++i) {
digits[i] = s.charAt(i)-'0';
}
我永远无法让自己使用 Integer.parseInt(String)
只是为了将数字字符转换为整数。
我将提供一个最简单的解决方案;
String s = "1956";
int array[] = new int[4];
array[0] = Integer.parseInt(s.charAt(0)+"");
array[1] = Integer.parseInt(s.charAt(1)+"");
array[2] = Integer.parseInt(s.charAt(2)+"");
array[3] = Integer.parseInt(s.charAt(3)+"");
显然循环可以做到这一点,但你真的没有告诉我们你的情况
我有一个这样的字符串
String s=1956;
并想将此 String
转换为 int[]
数组
[1,9,5,6];
有什么建议吗?
一个选项是
char[] nums = s.toCharArray();
int[] parsed = new int[nums.length];
for (int i = 0; i < nums.length; ++i){
parsed[i] = Integer.parseInt(String.valueOf(nums[i]));
}
您可以使用 String
的 split
方法将其转换为 String[]
,然后您可以迭代它调用 Integer.parseInt
来填充 int[]
我会这样做:
int[] digits = new int[s.length()];
for (int i = 0; i < digits.length; ++i) {
digits[i] = s.charAt(i)-'0';
}
我永远无法让自己使用 Integer.parseInt(String)
只是为了将数字字符转换为整数。
我将提供一个最简单的解决方案;
String s = "1956";
int array[] = new int[4];
array[0] = Integer.parseInt(s.charAt(0)+"");
array[1] = Integer.parseInt(s.charAt(1)+"");
array[2] = Integer.parseInt(s.charAt(2)+"");
array[3] = Integer.parseInt(s.charAt(3)+"");
显然循环可以做到这一点,但你真的没有告诉我们你的情况