再请教个关于list 显示的问题,能实现这样的效果么?
我想实现个VC /VB 里 类似list控件那样的功能,用jlist呢 还是jdblist好?
如:在list上一行一行的显示数据,并把新得到的数据和已在list上显示的数据比较,当数据相同时,则在此条记录上后,的次数列加 一次 ,若和list上数据全比较后,没有相同的,则新加一行。
即
ID DATA TIMES
001 AAAA 1
002 BBBB 1
当再得到一数据为“AAAA”, 则 001 行的 TIMES列内容 + 1
ID DATA TIMES
001 AAAA 2
002 BBBB 1
当来的数据是“CCCC”, 则,新加一行
ID DATA TIMES
001 AAAA 2
002 BBBB 1
003 CCCC 1
能实现这样的效果么?
------解决方案--------------------import java.io.BufferedReader;
import
java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class TestList {
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(
System.in));
String line = br.readLine();
Map stringsMap = new HashMap();
while (! " ".equals(line)) {
if (stringsMap.containsKey(line)) {
int times = ((Integer) stringsMap.get(line)).intValue();
stringsMap.put(line, new Integer(times + 1));
} else {
stringsMap.put(line, new Integer(1));
}
line = br.readLine();
}
Set keys = stringsMap.keySet();
Iterator it = keys.iterator();
{
int i = 1;
while (it.hasNext()) {
String key = (String) it.next();
System.out.println(i++ + " " + key + " "
+ ((Integer) stringsMap.get(key)).intValue());
}
}
} catch (
IOException e) {
e.printStackTrace();
}
}
}
输入空行停止。
------解决方案--------------------这是什么?
------解决方案--------------------用list显示这种形式的样式麻烦 还是用table吧