大家好,我是一位初学者,请大家多多指教.我想问问关于"JAVA中对象的强制转换类型"的问题,它在代码中是如何实现的,请举例.谢谢!

解决方案 »

  1.   

    for example
    Object obj[] = {"string", new Integer(1), ...so on};
    String str = (String)obj[0]; //强制转换类型
    Integer ig = (Integer)obj[1];
    ...
      

  2.   

    polarman(北极人)我是第一次来到该网站的,还是不很熟悉.
    我还想问阿宝,对于时间Date要是转换为字符串对象呢?谢谢阿宝
      

  3.   

    Date不是继承于String,换句话说,一个Date对象不是一个String对象,只能通过其他方式转换,而不能通过强制
    Date date = new Date();
    String strDate = date.toString();或
    java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    String strDate = format.format(date);或String strDate = (1700 + date.getYear()) + "-" + (date.getMonth()+1) + "-" + date.getDate() + " " + date.getHour() + ":" + date.getMinute() + ":" + date.getSecond();
    上面的1700可能应该为1900,记不太清了不过,我还是纳闷,为什么看不到等级和信誉值呢?
      

  4.   

    更正一下
    java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    24小时制,如果要12小时制:
    java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss aaa");
      

  5.   

    谢谢北极人,谢谢回答我问题的人,我明白了,没有出来等级和信誉值我也搞不懂,但是在回复里不是有了吗?我还想问问如在sql数据库表里定义是datetime类型字段,我在java中如何转换呢?例如:
    public Collection coll(){
            try {
          st = conbean.getcon().createStatement();
          rs = st.executeQuery("select * from new ");
        ArrayList table=new ArrayList();
        while(rs.next()){
        sbean row=new sbean();
        row.setUserid(rs.getString("userid"));
        row.setTitle(rs.getString("title"));
        row.setMassage(rs.getString("xinxi"));
        row.setTime(rs.getDate("fabutime"));/这句????
        table.add(row);
       }
       return table;
        }
        catch (SQLException ex) {  }      
    catch (SQLException ex) {}
        } 我在   public void setTime(Date time) {
        this.time = time;
      } // 已经定义Date time 
    还有
    对象.getime()是转换为什么类型??
    如果我在数据库中设置int型字段在程序中如何实现转换??
      

  6.   

    row.setTime(rs.getDate("fabutime"));//这一句不用转换,因为java.sql.Date继承于java.util.Date。也就是说,java.sql.Date的对象一定是一个java.util.Dateint等基本数据类型从数据库中取出后默认是它们的封装类型,即Integer等,这样做
    int val = ((Integer)rs.getObject(字段名或序号)).intValue();
    //如果不知道具体是Long还是Integer还是Short,这样更安全
    int val = ((Number)rs.getObject(字段名或序号)).intValue();
    因为,他们都是Number的子类
    或直接由Result转换
    int val = rs.getInt(字段名或序号);
      

  7.   

    polarman(北极人):我看到你的回复了,非常感谢,以后还少不了请教您!1