我需要一个数据结构,它允许我为每个项目存储至少 2 条数据。我希望这些项目按照它们插入的顺序存储。
例子:
Insert (xyz, string) ... insert (789, number)
System.out.println( dataStruct );
(xyz, string)
然后会打印出来(789,number)
如果可能,请显示一些示例代码。谢谢!
我需要一个数据结构,它允许我为每个项目存储至少 2 条数据。我希望这些项目按照它们插入的顺序存储。
例子:
Insert (xyz, string) ... insert (789, number)
System.out.println( dataStruct );
(xyz, string)
然后会打印出来(789,number)
如果可能,请显示一些示例代码。谢谢!
以下代码可以是您的数据结构:
List<Item> list;
class Item {
public String desc;
public Integer val;
void insert(String desc,Integer val){
this.desc = desc;
this.val = val;
}
void insert(Integer val,String desc){
insert(desc,val);
}
}
例子:
Hashtable<Integer,String> hTable=new Hashtable<Integer,String>();
//adding or set items in Hashtable by put method key and value pair
hTable.put(new Integer(2), "Two");
hTable.put(new Integer(1), "One");
hTable.put(new Integer(4), "Four");
hTable.put(new Integer(3), "Three");
hTable.put(new Integer(5), "Five");
看看一些Java 结构。
编辑
为了保持插入顺序,可以使用LinkedHashSet或LinkedHashMap
public class Store {
String str1;
String str2;
public Store(String string1, String string2) {
str1 = string1;
str2 = string2;
}
public static void main(String[] args) {
Store[] s = new Store[10]; // size
for (int i = 0; i < s.length; i++) {
s[i] = new Store("A", "B");
System.out.println(s[i].str1);
System.out.println(s[i].str2);
}
}
}
我认为这就是您要搜索的内容。这是类似 C 的结构。试试这个。这将帮助您通过进行少量更改来为每个项目插入超过 2 条数据。秩序也将得到维持。
这将以某种方式满足要求,您也可以在 HashMap 的构造函数中使用类型的参数。
HashMap map= new HashMap();
List<HashMap> virtualDs= new ArrayList<HashMap>();