【转】Java: 数字与字符串,相互转换的方法

**一、数字与字符串,相互转换的方法有如下这些,特别注意的是,不管使用哪种方法,字符串为空或者数字未初始化都是不允许的,编译或运行中会报错
二、自己实例中,值得学习第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;

www.51testing.com/html/71/111971-3706836.html

原文地址:https://www.cnblogs.com/hitWTJ/p/9865437.html