java – 将带有空格和数字的String转换为只带数字的int数组
作者:互联网
我想将String lotto int转换为整数数组.
字符串乐透由1到99之间的一定数量的数字组成,并且仅由1和2位数字组成. (示例:字符串乐透可能看起来像“1 34 5 23 7 89 32 4 10 3 6 5”.)
我试图通过将String转换为char []然后将char []转换为int []来解决问题.将其转换为char []的逻辑是使得可以格式化int []的数字.
这是我到目前为止:
public static int[] conversion(String lotto)
{
char[] c = lotto.toCharArray();
int[] a = new int[c.length];
for(int i = 0, j = 0; i < c.length; i++)
{
if(c[i] != ' ' && c[i+1] != ' ')
{
a[j] = c[i] + c[i+1];
i+=2;
j++;
}
else if(c[i] != ' ' && c[i+1] == ' ')
{
a[j] = c[i];
i++;
j++;
}
}
return a;
}//end of conversion method
我仍在研究程序的其余部分,但我知道c [i] c [i 1]返回一个ASCII值或一个不同的int,而不是将两个字符组合在一起(我想要的例子:’3” 4’= 34.)
我该如何解决这个问题?
解决方法:
如果您不关心转换为字符数组,那么您可以使用.split()方法
String[] nums = lotto.split(" ");
int[] a = new int[nums.length];
for(int i = 0; i < a.length; i++)
{
a[i] = Integer.parseInt(nums[i]);
}
return a;
标签:java,arrays,char,data-conversion 来源: https://codeday.me/bug/20190612/1224204.html