2011-03-29 115 views
1

如何將「1,000」(作爲字符串獲得的輸入)轉換爲整數?字符串的整數值

+1

在java中學習Integer的基本知識:http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html#parseInt(java.lang.String) – 2011-03-29 09:39:16

回答

7
DecimalFormat df = new DecimalFormat("#,###"); 
    int i = df.parse("1,000").intValue(); 
    System.out.println(i); 
+0

通用方法colud就像這樣。 Integer.parseInt(「1,000」.replaceAll(「[^ \\ d。]」,「」)) – 2015-05-06 10:53:23

0

只需用空字符串替換所有逗號,然後使用convert.ToInt32();

string str = "1,000"; 
int num = Integer.parseInt(str.replace(",","")); 
+1

我需要執行在java中轉換! – user673218 2011-03-29 09:42:06

+0

@ user673218 - 這在java中也可用;) – 2011-03-29 09:42:50

+1

明白了,謝謝! – user673218 2011-03-29 09:45:53

0

用逗號(,)在字符串中你可能無法做到。

2
String stringValue = "1,000"; 

String cleanedStringValue = stringValue.replace(',',''); 

int intValue = Integer.parseInt(cleanedStringValue); 
+0

您的意見是好的。爲什麼你刪除它們? – 2011-03-29 09:49:59

+0

因爲某些原因,當評論被包含在內時,它並沒有正確渲染代碼!請原諒我,但林新的所有這個stackoverflow的東西! – bstack 2011-03-29 09:57:02

+1

請看這裏的第3次修訂:http://stackoverflow.com/posts/5470551/revisions是由我製作的。它顯示評論和代碼都很好。 – 2011-03-29 09:59:59

3
Integer i = Integer.valueOf("1,000".replaceAll(",", "")); 
+0

更好:System.out.println(Integer.parseInt(「1,000」.replaceAll(「\\ D +」,「」))); – 2011-03-29 09:44:01

+1

@帕特里克,這將把'-10'變成'10'; – 2011-03-29 09:53:13

+0

哈哈,你說得對! :D – 2011-03-29 10:10:23

0
String str ="1000"; 

試試這個

int i = Integer.valueOf("1,000".replaceAll(",", "")); 
0
Integer.parseInt("1000"); 

身高避免 「幻數」

String num = "1000"; 
Integer.parseInt(num); 
0

使用如下代碼。

String str = "1000"; 
int result; 
try { 
    result = Integer.parseInt(str); 
} catch(NumberFormatException ex) { 
    System.err.println("That was not an integer"); 
} 
0

總是寧願用Long.ValueOf代替新的Long。的確,新的Long總是產生一個新對象,而Long.ValueOf允許編譯器緩存這些值。由於緩存,您的代碼將更快執行。

+0

這並沒有提供一個問題的答案。要批評或要求作者澄清,在他們的帖子下留下評論 - 你總是可以評論你自己的帖子,一旦你有足夠的[聲譽](http://stackoverflow.com/help/whats-reputation),你會能夠[評論任何帖子](http://stackoverflow.com/help/privileges/comment)。 – 2015-05-06 09:59:23