-8

我制作了一个需要int[],的函数,Conflict(int[] tab)众所周知,我们JTextField以 (s) 的形式从 a 中提取信息String,然后我将其转换为整数:

int input=Integer.parseInt(s);

现在,我找到了这种方法:

int input= 1234;
String input= String.valueOf(input);
Vector<int> tab = new Vector<int>();
for (int cpt = 0; cpt <input.length(); cpt++)
{
    tab.add(Integer.valueOf(input.substring(cpt, cpt+1)).intValue());
}

但我正在寻找一种没有向量的简单方法,所以问题是如何将输入(int)转换为表,int[]以便我可以在冲突函数中使用它?

这是我的问题的答案,适用于所有希望通过非常聪明的简单技巧将字符串int转换为字符串int[]

tcst = ""+inputc;
int tcn = tcst.length();
int[] tctab = new int[tcn];
for(int h=0; h<tcn; h++){
    tctab[h] = (int) Integer.parseInt("" + tcst.charAt(h));
}
4

2 回答 2

1

如果您有一个像“12345”这样的数字字符串,最好的方法是使用字符串的 toCharArray() 方法将其转换为 char 数组。一旦你得到一个数字的 char 数组,这些 char 就可以在你的程序中用作整数。就在您从 char 数组中获取一个元素并使用字符的 getNumericValue() 方法将其转换为 int 时

于 2013-04-30T11:30:29.623 回答
-1

如果您的输入是字符串(来自 a JTextField),那么我不明白您为什么要将其转换为整数,只是为了String再次将其转换为 a 。

要从Stringint[],这是一种方法。

char[] chars = inputString.toCharArray();
int[] result = new int[chars.length];
for(int i=0; i<chars.length; i++){
  result[i] = Character.getNumericValue(chars[i]);
}
于 2013-04-30T12:02:35.247 回答