java object数组

date = new ArrayList();

date.add(new Object[] { "孙建京", "现代音响", "人民邮电", "2010-05-01" });
date.add(new Object[] { "王爱平", "软件测试", "清华大学", "2010-05-11" });
date.add(new Object[] { "张一和", "51单片机", "人民邮电", "2010-06-13" });
for (int i = 0; i < date.size(); i++) {
dates = (Object[]) date.get(i);
for (int j = 0; j < dates.length; j++) {
if (time.equals(dates[j])) {
da = dates;
break;
}
}
}
我要返回da的数据,但是在这里循环查出来的就是4条同意的数据,
Object[] row = new Object[4];
String str = da[index]+"";
row[0] = str;
return row;
然后我有把ba的值放在row中,拿到的值就不在同一个元素里。
显示结果
作者", "书名", "出版商", "出版日期"
张建京
现代音响
人民邮编
2010-05-01
这不是我要的结果,我应该怎么写?
在查询的时候da数据是重复的。为了不让重复就把da付给了row数组,在显示的时row数组把赋给他的值当做了4个值,所以显示的是不在一行。我需要他显示在同一行。
Object[] row = new Object[4];
String str = da[index].toString();
row = new Object[]{str};我这样写的话就报错.....我这应该怎么写呢?

第1个回答  2010-12-17
import java.util.ArrayList;
import java.util.List;

public class ObjectAry {

public static void main(String[] args) {

List<Object[]> list = new ArrayList<Object[]>();

list.add(new Object[]{"Sun Jianjing", "Xiandaiyinxiang", "Renminyoudian", "2010-05-01"});
list.add(new Object[]{"Wang Aiping", "Ruanjianceshi", "Qinghuadaxue", "2010-05-11"});
list.add(new Object[]{"Zhang Yihe", "51DanPianJi", "Renminyoudian", "2010-06-13"});

String time = "2010-05-01";

//starts
Object[] da = null;

for(int i = 0, len = list.size(); i <len; i++){
Object[] objs = list.get(i);

for(int j = 0, length = objs.length; j < length; j++){
if(time.equals(objs[j])){
da = objs;
break;
}
}

}

//ends

StringBuffer sb = new StringBuffer();

for(int i = 0, len = da.length; i < len; i++){
sb.append(((String)da[i]) + ", ");
}

String result = sb.toString().trim();
result = result.substring(0, result.length() - 1);
System.out.println(result);

}
}
----------------
Sun Jianjing, Xiandaiyinxiang, Renminyoudian, 2010-05-01

类似这样,或者你直接说你list.add那里是什么样子,要什么样的结果容易点本回答被提问者采纳
第2个回答  2017-08-31
row [0]= str;

~
~
~
~
相似回答