1.2 String字符串和整型int的相互转换,valueOf() 、parse()和toString()
String 在編程中被廣泛使用,所以掌握 String 和 int 的相互轉(zhuǎn)換方法是極其重要的。前面部分主要講解了 String 轉(zhuǎn)換 int 和 int 轉(zhuǎn)換 String 方法,后面部分對 valueOf()、parse() 和 toString() 等具體方法進(jìn)行介紹。
String轉(zhuǎn)換為int
String 字符串轉(zhuǎn)整型 int 有以下兩種方式:
- Integer.parseInt(str)
- Integer.valueOf(str).intValue()
注意:Integer 是一個(gè)類,是 int 基本數(shù)據(jù)類型的封裝類
例如下面代碼所示:
public static void main(String[] args) {String str = "123";int n = 0;// 第一種轉(zhuǎn)換方法:Integer.parseInt(str)n = Integer.parseInt(str);System.out.println("Integer.parseInt(str) : " + n);// 第二種轉(zhuǎn)換方法:Integer.valueOf(str).intValue()n = 0;n = Integer.valueOf(str).intValue();System.out.println("Integer.parseInt(str) : " + n); }輸出結(jié)果為:
Integer.parseInt(str) : 123 Integer.parseInt(str) : 123在 String 轉(zhuǎn)換 int 時(shí),String 的值一定是整數(shù),否則會報(bào)數(shù)字轉(zhuǎn)換異常(java.lang.NumberFormatException)。
int轉(zhuǎn)換為String
整型 int 轉(zhuǎn) String 字符串類型有以下 3 種方法:
- String s = String.valueOf(i);
- String s = Integer.toString(i);
- String s = “” + i;
例如下面代碼所示:
public static void main(String[] args) {int num = 10;// 第一種方法:String.valueOf(i);num = 10;String str = String.valueOf(num);System.out.println("str:" + str);// 第二種方法:Integer.toString(i);num = 10;String str2 = Integer.toString(num);System.out.println("str2:" + str2);// 第三種方法:"" + i;String str3 = num + "";System.out.println("str3:" + str3); }輸出結(jié)果為:
str:10 str2:10 str3:10使用第三種方法相對第一第二種耗時(shí)比較大。在使用第一種 valueOf() 方法時(shí),注意 valueOf 括號中的值不能為空,否則會報(bào)空指針異常(NullPointerException)。
valueOf() 、parse()和toString()
1)valueOf()
valueOf() 方法將數(shù)據(jù)的內(nèi)部格式轉(zhuǎn)換為可讀的形式。它是一種靜態(tài)方法,對于所有 Java 內(nèi)置的類型,在字符串內(nèi)被重載,以便每一種類型都能被轉(zhuǎn)換成字符串。valueOf() 方法還被類型 Object 重載,所以創(chuàng)建的任何形式類的對象也可被用作一個(gè)參數(shù)。這里是它的幾種形式:
static String valueOf(double num) static String valueOf(long num) static String valueOf(Object ob) static String valueOf(char chars[])與前面的討論一樣,調(diào)用 valueOf() 方法可以得到其他類型數(shù)據(jù)的字符串形式——例如在進(jìn)行連接操作時(shí)。對各種數(shù)據(jù)類型,可以直接調(diào)用這種方法得到合理的字符串形式。所有的簡單類型數(shù)據(jù)轉(zhuǎn)換成相應(yīng)于它們的普通字符串形式。任何傳遞給 valueOf() 方法的對象都將返回對象的 toString() 方法調(diào)用的結(jié)果。事實(shí)上,也可以通過直接調(diào)用 toString() 方法而得到相同的結(jié)果。
對大多數(shù)數(shù)組,valueOf() 方法返回一個(gè)相當(dāng)晦澀的字符串,這說明它是一個(gè)某種類型的數(shù)組。然而對于字符數(shù)組,它創(chuàng)建一個(gè)包含了字符數(shù)組中的字符的字符串對象。valueOf() 方法有一種特定形式允許指定字符數(shù)組的一個(gè)子集。
它具有如下的一般形式:
static String valueOf(char chars[ ], int startIndex, int numChars)這里 chars 是存放字符的數(shù)組,startIndex 是字符數(shù)組中期望得到的子字符串的首字符下標(biāo),numChars 指定子字符串的長度。
2)parse(),字符串轉(zhuǎn)為數(shù)值
parseXxx(String) 這種形式,是指把字符串轉(zhuǎn)換為數(shù)值型,其中 Xxx 對應(yīng)不同的數(shù)據(jù)類型,然后轉(zhuǎn)換為 Xxx 指定的類型,如 int 型和 float 型。
3)toString(),引用類型轉(zhuǎn)為字符串
toString() 可以把一個(gè)引用類型轉(zhuǎn)換為 String 字符串類型,是 sun 公司開發(fā) Java 的時(shí)候?yàn)榱朔奖闼蓄惖淖址僮鞫匾饧尤氲囊粋€(gè)方法。
總結(jié)
以上是生活随笔為你收集整理的1.2 String字符串和整型int的相互转换,valueOf() 、parse()和toString()的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.1 定义字符串
- 下一篇: 1.3 字符串拼接(连接)