请帮助我
大家好,我是一位初学者,请大家多多指教.我想问问关于"JAVA中对象的强制转换类型"的问题,它在代码中是如何实现的,请举例.谢谢! 问题点数:20、回复次数:12Top
1 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-02-16 16:44:42 得分 0
我想知道,为什么我看不到你的等级和信誉值?Top
2 楼qybao(阿宝)回复于 2006-02-16 16:46:22 得分 0
for example
Object obj[] = {"string", new Integer(1), ...so on};
String str = (String)obj[0]; //强制转换类型
Integer ig = (Integer)obj[1];
...
Top
3 楼GirlPearl(我是女生)回复于 2006-02-16 16:56:14 得分 0
polarman(北极人)我是第一次来到该网站的,还是不很熟悉.
我还想问阿宝,对于时间Date要是转换为字符串对象呢?谢谢阿宝Top
4 楼dizhirihuo(抵制日货)回复于 2006-02-16 16:58:21 得分 0
顶Top
5 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-02-16 17:05:53 得分 0
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,记不太清了
不过,我还是纳闷,为什么看不到等级和信誉值呢?Top
6 楼725137(2006年不会菜)回复于 2006-02-16 17:08:07 得分 0
调用toString方法Top
7 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-02-16 17:18:19 得分 20
更正一下
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");Top
8 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-02-16 17:22:12 得分 0
MM同志,该结贴了!Top
9 楼GirlPearl(我是女生)回复于 2006-02-16 17:33:55 得分 0
谢谢北极人,谢谢回答我问题的人,我明白了,没有出来等级和信誉值我也搞不懂,但是在回复里不是有了吗?我还想问问如在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型字段在程序中如何实现转换??Top
10 楼GirlPearl(我是女生)回复于 2006-02-16 18:09:29 得分 0
请大家帮我解答一下,多谢了!!Top
11 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-02-17 09:06:14 得分 0
row.setTime(rs.getDate("fabutime"));//这一句不用转换,因为java.sql.Date继承于java.util.Date。也就是说,java.sql.Date的对象一定是一个java.util.Date
int等基本数据类型从数据库中取出后默认是它们的封装类型,即Integer等,这样做
int val = ((Integer)rs.getObject(字段名或序号)).intValue();
//如果不知道具体是Long还是Integer还是Short,这样更安全
int val = ((Number)rs.getObject(字段名或序号)).intValue();
因为,他们都是Number的子类
或直接由Result转换
int val = rs.getInt(字段名或序号);
Top
12 楼GirlPearl(我是女生)回复于 2006-02-17 10:07:53 得分 0
polarman(北极人):我看到你的回复了,非常感谢,以后还少不了请教您!1Top




