本帖最后由 棉/mg花/x糖 于 2013-5-25 16:22 编辑
关于引用对象与基本类型值之间相互转换的总结
引用对象与基本类型值之间的相互转换,相信很多人都一下子想不出来,数不清楚,
这里总结如下,希望对大家有所帮助!
一、基本类型对象与基本类型值之间的转换
1、由基本类型值得到基本类型对象(两种方式)
(1)基本类类名 基本类对象 = new 基本类类名(基本类型值v);
(2)基本类类名 基本类对象 = 基本类型值v;
例如:得到一个Integer对象。
Integer n = new Integer(123);
2、由基本类对象得到基本类型值
基本类型 变量 = 基本类对象.基本类型value();
例如:①得到一个double变量值。
double d = dObj.doubleValue();
②得到一个boolean变量值。
boolean b = bObj.booleanValue();
二、字符串对象与基本类型值之间的转换
1、其他类型的数据转换成字符串
(1)通用方法
①valueOf() ---->属于String类的成员方法
String.valueOf(参数);
参数:何种类型的数值变量或对象。即:boolean、char、int、long、float、double和对象。
②字符串连接符"+"
String a = ""+25:表示将数字25转换成字符串并存放于a中。
String s = ""+b :表示将变量(对象)b的值转换成字符串形式并存于s中。
(2)数字变为字符串toString ----->范围小,只适用于数字变为字符串。
范围小,只适用于基本类型数据(即数字)转变为字符串。
Byte.toString(byte); Short.toString(short);
Integer.toString(int); Long.toString(long);
Float.toString(float); Double.toString(double);
2、字符串对象转换成其他类型的数据
范围小,仅适用于由数字组成的字符串向数字转换。
Byte.parseByte(String s); Short.parseShort(String s);
Integer.parseInt(String s); Long.parseLong(String s);
Float.parseFloat(String s); Double.parseDouble(String s);
程序举例:
- package com.yb.ArrayAndString;
- public class LetterConversion {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- int n1 = 123;
- Integer n = new Integer(n1);
- Double dObj = new Double(125.0);
- double d = dObj.doubleValue();
- String s1 = String.valueOf(d);
- String s2 = "Java";
- String s3 = String.valueOf(s2);
- String s4 = "Welcome"+25;
- String s5 = "Price"+dObj;
- float f = 1987.12f;
- String s6 = "Welcome"+dObj;
- String s7 = Float.toString(f);
- String s8 = new String("1298563");
- int n2 = Integer.parseInt(s8); //s8不能是小数字符串,否则会报错
- double n3 = Double.parseDouble(s8);
- double m = 3.456;
- String sc1 = String.valueOf(m);
- char[] cc = {'a','b','c'};
- String sc2 = String.valueOf(cc);
- boolean b = true;
- String sc3 = String.valueOf(b);
- char[] cs = {'J','a','v','a'};
- String sc4 = String.valueOf(cs,2,2);
- String sr = s4.replace('e','r');
- String w1 = s5.toLowerCase();
- String u2 = s2.toUpperCase();
- System.out.println("n1 = "+n1+"\tn.value = "+n.intValue());
- System.out.println("d = "+d);
- System.out.println("s1 = "+s1+"\ts2 = "+s2);
- System.out.println("s3 = "+s3+"\ts4 = "+s4);
- System.out.println("s5 = "+s5+"\ts6 = "+s6);
- System.out.println("s7 = "+s7+"\ts8 = "+s8);
- System.out.println("n2 = "+n2+"\tn3 = "+n3);
- System.out.println("m = "+m+"\tsc1 = "+sc1);
- System.out.println("sc2 = "+sc2);
- System.out.println("b = "+b+"\tsc3 = "+sc3);
- System.out.println("sc4 = "+sc4);
- System.out.println("s4.replace('e','r') = "+sr);
- System.out.println("s5.toLower = "+w1);
- System.out.println("s2.toUpper = "+u2);
- }
- }
复制代码 运行效果图:
|