java中string和int互相转化
String -> int
A. 有两个方法:
1). int i = Integer.parseInt([String]); 或
i = Integer.parseInt([String],[int radix]);
其中radix表示转换进制,可取2,8,10,16等
2). int i = Integer.valueOf(my_str).intValue();
其中,Integer.valueOf()和Integer.parseInt()都可将String转换为int类型数据,区别如下:
new Integer.valueof()返回的是Integer的对象。
Integer.parseInt() 返回的是一个int的值。
new Integer.valueof().intValue();返回的也是一个int的值。
注: 字串转成 Double, Float, Long 的方法大同小异。如下:
String str2 = "3275.42";
double d = Double.parseDouble(str2);
int -> String
A. 有叁种方法:
1.) String s = String.valueOf(i);
2.) String s = Integer.toString(i);
3.) String s = "" + i;
注: Double, Float, Long 转成字串的方法大同小异.
下面来讲一下这几种方式的不同区别: int i = Integer.parseInt([String]) //直接使用静态方法,不会产生多余的对象,但会抛出异常int i = Integer.valueOf(my_str).intValue() //相当于 new Integer(Integer.parseInt(s)),也会抛异常,但会多产生一个对象String s = Integer.toString(i); //直接使用String类的静态方法,只产生一个对象String s = "" + i; //会产生两个String对象
示例代码如下:
public class TypeChange {
public TypeChange() {
}
//change the string type to the int type
public static int stringToInt(String intstr)
{
Integer integer;
integer = Integer.valueOf(intstr);
return integer.intValue();
}
//change int type to the string type
public static String intToString(int value)
{
Integer integer = new Integer(value);
return integer.toString();
}
//change the string type to the float type
public static float stringToFloat(String floatstr)
{
Float floatee;
floatee = Float.valueOf(floatstr);
return floatee.floatValue();
}
//change the float type to the string type
public static String floatToString(float value)
{
Float floatee = new Float(value);
return floatee.toString();
}
//change the string type to the sqlDate type
public static java.sql.Date stringToDate(String dateStr)
{
return java.sql.Date.valueOf(dateStr);
}
//change the sqlDate type to the string type
public static String dateToString(java.sql.Date datee)
{
return datee.toString();
}
public static void main(String[] args)
{
java.sql.Date day ;
day = TypeChange.stringToDate("2003-11-3");
String strday = TypeChange.dateToString(day);
System.out.println(strday);
String str = "00124";
int i = TypeChange.stringToInt(str);
System.out.println(i);
}
}