java数据存储常用数据结构的实现
Posted 旺仔哥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java数据存储常用数据结构的实现相关的知识,希望对你有一定的参考价值。
java数据存储结构有好几种方式,如 先进先出、先进后出、键值、集合等,使用正确的数据结构可以让系统性能得到很高的提升。
1.先进先出就是平时说的队,在Java中具体的实现可以使用 双向链表LinkedList
具体实现代码:
public static void main(String[] args)
LinkedList<Integer> linkedList = new LinkedList<>();
linkedList.add(5);
linkedList.add(3);
linkedList.add(7);
linkedList.add(9);
linkedList.add(0);
log.info("先进先出==="+linkedList.removeFirst());
2.先进后出就是通常说的栈stack,在Java中具体的实现可以使用 双向链表LinkedList
具体实现代码:
public static void main(String[] args)
LinkedList<Integer> linkedList = new LinkedList<>();
linkedList.add(5);
linkedList.add(3);
linkedList.add(7);
linkedList.add(9);
linkedList.add(0);
log.info("先进先出==="+linkedList.removeLast());
3.键值对数据怎样存储,map有两个子类,hashMap和treeMap,treeMap会对key排序,而hashMap的速度较快,所以如果你需要排序,用tree。只是存进去拿出来,用hash就可以。
具体示例代码:
public static void main(String[] args)
hashMap();
treeMap();
public static void hashMap()
Map<String,Integer> map = new HashMap<>();
map.put("English", 80);
map.put("Math", 90);
map.put("Compute", 100);
log.info(String.valueOf(map.keySet()));
log.info(String.valueOf(map.values()));
log.info( map.get("English")+"");
//遍历方式
for(String key :map.keySet())
log.info(map.get(key)+"");
for(Integer i :map.values())
log.info(i+"");
public static void treeMap()
Map <String, Integer> map = new TreeMap<String, Integer>();
map.put("English", 80);
map.put("Math", 90);
map.put("Compute", 100);
log.info(String.valueOf(map));
4.set集合,set包括了treeset,hashset两个子类,set集合这个数据结构是排重有序的
具体示例代码:
public static void main(String[] args) setDemo(); public static void setDemo() Set<String> set = new TreeSet<>(); set.add("b"); set.add("a"); set.add("e"); set.add("t"); set.add("8888"); set.add("8888"); log.info(set.toString());
输出结果:[8888, a, b, e, t]
以上是关于java数据存储常用数据结构的实现的主要内容,如果未能解决你的问题,请参考以下文章