Java中的valueOf和parse這兩個方法都是將字符串轉化為對應類型的方法,但是它們之間有一些差別。
public static Integer valueOf(String s) throws NumberFormatException public static Double valueOf(String s) throws NumberFormatException public static Float valueOf(String s) throws NumberFormatException public static Boolean valueOf(String s) public static Byte valueOf(String s) throws NumberFormatException public static Short valueOf(String s) throws NumberFormatException public static Long valueOf(String s) throws NumberFormatException
首先看到這段代碼,這些方法都是用來將字符串轉化為對應的基本類型對象。這些方法都拋出NumberFormatExceptio,當字符串不能轉化為對應的類型時,例如串中含有其他字符(除數字、負號、小數點外),或者字符串過長導致值越界。
public static int parseInt(String s) throws NumberFormatException public static double parseDouble(String s) throws NumberFormatException public static float parseFloat(String s) throws NumberFormatException public static long parseLong(String s) throws NumberFormatException public static byte parseByte(String s) throws NumberFormatException public static short parseShort(String s) throws NumberFormatException
這些方法與valueOf方法類似,也可以將字符串轉化為對應的基本類型對象。但是,這些方法通常被用于轉化int、long等基本類型,因為它們返回的是基本類型而不是對象類型。同樣的,這些方法也可能拋出一個NumberFormatException異常。
在使用的時候,valueOf方法一般用于將字符串轉化為對象類型,而parse方法通常用于將字符串轉化為基本數據類型。兩者在實際中均有不同的用途。