**一、数字与字符串,相互转换的方法有如下这些,特别注意的是,不管使用哪种方法,字符串为空或者数字未初始化都是不允许的,编译或运行中会报错
二、自己实例中,值得学习第5小段代码**
1如何将字串 String 转换成整数 int?
A. 有两个方法: //两种方法第1种比较方便,第2种需要建立Integer对象,并且对象函数最终是用第一种方式的
1). int i = Integer.parseInt([String]); 或
i = Integer.parseInt([String],[int radix]);
2). int i = Integer.valueOf(my_str).intValue();
2 如何将整数 int 转换成字串 String ?
A. 有叁种方法: //其中第2、3种比较方便,可以同时支持多种数字类型,而第1种则需要建立相应的数字字符串类型对象
1.) String s = String.valueOf(i);
2.) String s = Integer.toString(i);
3.) String s = “” + i;
注: Double, Float, Long 转成字串的方法大同小异.
自己实例
packageIntf.study;
importjava.text.DecimalFormat;//格式化字符串的对象类
publicclassintfTest {
publicstaticvoidmain(String[] args) {
String s ="123.456";
String s2="789";
//第1段代码
doubled = Double.parseDouble(s);
floatf = Float.parseFloat(s);
System.out.println("d="+ d);
System.out.println("f="+ f);
//第2段代码,整数字符串可直接转换为int
intj = Integer.parseInt(s2);//整数字符串可以直接转化成整形
System.out.println("j="+ j);
//第3段代码,指定格式,之后再将带小数点变通转换为int
//inti = Integer.parseInt(s); //报错,带小数点字符串不能直接转换为整数
//inti = d; //长度大的值不能赋值给长度短的
doubleh=Double.parseDouble(s);
DecimalFormat df =newDecimalFormat();
df.applyLocalizedPattern("####.#");//只输出一个小数点
String Double_str = df.format(h); //将double按照指定个数输出字符串
System.out.println("指定小数点位数字符串输出Double_str="+ Double_str);
df.applyLocalizedPattern("####");//只输出整数
String int_str = df.format(h);
System.out.println("只输出整数字符串int_str="+ int_str);
Integer integer;
integer = Integer.valueOf(int_str);
intk1=integer.intValue();//将整数字符串转换为整数
intk2 = Integer.valueOf(int_str).intValue();
System.out.println("输出整数k1="+ k1);
System.out.println("输出整数k2="+ k2);
//第4段代码,数字转换为字符串
/*
1.) String s = String.valueOf(i);
2.) String s = Integer.toString(i);
3.) String s = "" + i;
注: Double, Float, Long转成字串的方法大同小异.
*/
String s_t1 = String.valueOf(963.63);//数字可以整数、也可以带小树
System.out.println("s_t1="+ s_t1);
String s_t2 =""+ 741.41;//数字可以整数、也可以带小树
System.out.println("s_t2="+ s_t2);
Integer integer2 =newInteger(852); //数字只能是整数
String s_t3 = integer2.toString();
System.out.println("s_t3="+ s_t3);
Float floatee =newFloat(852.52);//小数点的数字的转换
String s_t4 = floatee.toString();
System.out.println("s_t4="+ s_t4);
//第5段代码,为了避免报错,做异常的处理
Integer price =null;
String STR="789.45";
try{
price = Integer.parseInt(STR);
}catch(Exception e) {
e.printStackTrace();
}
if(price ==null) {
System.out.println("数字格式错误");
}
}
}
运行输出:
d=123.456
f=123.456
j=789
指定小数点位数字符串输出Double_str=123.5
只输出整数字符串int_str=123
输出整数k1=123
输出整数k2=123
s_t1=963.63
s_t2=741.41
s_t3=852
s_t4=852.52
数字格式错误
这是一个例子,说的是JAVA中数据数型的转换.
packagecn.com.lwkj.erts.reGISter;
importjava.sql.Date;