2013-04-30 55 views
-7

我提出,需要int[]Conflict(int[] tab)函數,大家都知道,我們在String(S)的形式提取從JTextField信息,所以我然後轉換成與一個整數:如何爲int的字符串轉換成表格INT []

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)轉換爲表o ˚Fint[]這樣我就可以在衝突功能,使用它呢?

這裏是一個回答我的問題爲大家誰在尋找使用字符串與一個非常聰明的簡單的一招

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)); 
} 

回答

1

把一個intint[]如果你有一些像「12345字符串「最好的方法是使用toCharArray()方法將字符串轉換爲char數組。一旦你得到一個char數組,這些char可以在你的程序中用作整數。只是當你從字符數組中獲取一個元素並使用字符的getNumericValue()方法將其轉換爲int

+0

-1明顯不正確。將char轉換爲int將返回到unicode位置,而不是數字值。這顯然不是OP要求的。 – 2013-04-30 11:59:33

+0

您可以使用CHAR – 2013-04-30 12:02:46

+0

的getNumericValue()方法,你也可以這樣做焦炭vlaue - 48,這樣就可以得到實際的價值 – 2013-04-30 12:05:28

-1

如果你的輸入是字符串(來自JTextField),那麼我不明白你爲什麼要轉換它爲整數,只是再次轉換爲String

如果要從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]); 
} 
+0

由於這是一個很好的辦法做到這一點 – user2161721 2013-04-30 12:21:54

+0

如果你downvote,告訴我爲什麼。 – 2013-05-03 07:16:42