zoukankan      html  css  js  c++  java
  • java类型转换

    1.Object转String[]数组:

      Object l = it.remove(-1, 1, 3);

      String[] newarray = null;
      if (l.getClass().isArray()) {
        int length = Array.getLength(l);
        newarray = new String[length];
        for (int i = 0; i < length; i++) {
          newarray[i] = String.valueOf(Array.get(l, i));
        }
      }
      for (String str : newarray) {
        System.out.println(str);
      }

    2.Object转String类型

    (1)Object.toString(): 

    Object object = getObject();
     System.out.println(object.toString());

    注:转换之前确保object不是null值,否则将抛出NullPointerException异常。

    (2)(String)object

    注意:转换之前必须确保类型必须能转成String类型。因此最好用instanceof做个类型检查,以判断是否可以转换。否则容易抛出CalssCastException异常。

    此外,因null值可以强制转换为任何java类类型,(String)null也是合法的。

    (3)String.valueOf(Object)

    注:

    因为源码为:

    public static String valueOf(Object obj) {
           return (obj == null) ? "null" : obj.toString();
    }

    ①所以不用考虑object若为null值,不会报错

    ②当object为null时,String.valueOf(object)的值是字符串”null”,而不是
    null!!! 所以要特别注意

    3.Object转int

    (1)(int)obj

    (2)Inerger.parseInt(obj.toString())

    例:

    int a=1;

    Object ao=a;

    int b = (int)ao 

     int c=Inerger.parseInt(obj.toString());

    4.String    int   转换(String转Double, Float, Long方法一样)

    (1)String转int

      ①  int i = Integer.parseInt([String]); 或

       int i = Integer.parseInt([String],[int radix]);

      ②   int i = Integer.valueOf(my_str).intValue();

    new Integer.valueof()返回的是Integer的对象。
    Integer.parseInt() 返回的是一个int的值。

    new Integer.valueof().intValue();返回的也是一个int的值。
    Integer.valueof(String s)是将一个实际值为数字的变量先转成string型再将它转成Integer型的包装类对象(相当于转成了int的对象)这样转完的对象就具有方法和属性了。
    而Integer.parseInt(String s)只是将是数字的字符串转成数字,注意他返回的是int型变量不具备方法和属性。

    (2)int转String

      ①  String s = String.valueOf(i);

      ②  String s = Integer.toString(i);

      ③  String s = "" + i;

    5.boolean 转String

    (1)  boolean bool = true;
          String s = new Boolean(bool).toString();//将bool利用对象封装器转化为对象
          s.equals("true");

    (2)   boolean bool = true;
           String s = String.valueOf( bool );

    注:①第二种方法更简洁;②第一种方法在转化过程中多引入了一个完全没有必要的对象,因此,相对第二种方法来说这就造成了内存空间的浪费,大大减慢了运行速度。所以,推荐使用第二种方法。

    6.String 转 Date

    导入  java.util.Date date=null;
      date=java.sql.Date.valueOf(String s);

  • 相关阅读:
    el-select下拉框选项太多导致卡顿,使用下拉框分页来解决
    vue+elementui前端添加数字千位分割
    Failed to check/redeclare auto-delete queue(s)
    周末啦,做几道面试题放松放松吧!
    idea快捷键
    解决flink运行过程中报错Could not allocate enough slots within timeout of 300000 ms to run the job. Please make sure that the cluster has enough resources.
    用.net平台实现websocket server
    MQTT实战3
    Oracle 查看当前用户下库里所有的表、存储过程、触发器、视图
    idea从svn拉取项目不识别svn
  • 原文地址:https://www.cnblogs.com/whhjava/p/7239752.html
Copyright © 2011-2022 走看看