Stack 类的操作,将Stack中的数据添加到Map里面

来源:互联网 发布:淘宝买的跳蛋怎么消毒 编辑:程序博客网 时间:2024/06/15 06:39
package com.hj.test;import java.util.Iterator;import java.util.LinkedHashMap;import java.util.Map;import java.util.Set;import java.util.Stack;import java.util.Map.Entry;/* * 栈数据操作 */public class StackTest{/** * 后进先出测试类 * @param args */public static void main(String[] args){getInfo("key", "value5");}/** * 将存放在栈种的数据添加到map里面 * @param key * @param value */@SuppressWarnings({"rawtypes"})public static void getInfo(String key, String value){Map<String, String> map = new LinkedHashMap<String, String>();Stack<String> stack = new Stack<String>();//如果 将index的下标设为1,2,3...那么他不会按照后进先出的顺序输出,而是根据你设置下标的顺序输出stack.add(0, "value1"+","+key);stack.add(0, "value2"+","+key);stack.add(0, "value3"+","+key);stack.add(0, "value4"+","+key);stack.add(0, "value5"+","+key);stack.add(0, "value6"+","+key);stack.add(0, "value7"+","+key);stack.add(0, "value8"+","+key);stack.add(0, "value9"+","+key);stack.add(0, "value10"+","+key);stack.add(0, "value11"+","+key);for (int i = 0; i < stack.size(); i++){if (stack.get(i).equals(value + "," + key)){stack.remove(stack.get(i));break;}}stack.add(0,  value+ "," + key);if (stack.size() > 9){stack.remove(stack.size() - 1);}for (int i = 0; i < stack.size(); i++){String splt[] = stack.get(i).split(",");map.put(splt[0], splt[1]);}Set set = map.entrySet();Iterator iterator = set.iterator();while (iterator.hasNext()){Entry entry = (Entry)iterator.next();System.out.println(entry.getKey()+"--value:"+entry.getValue());}   }}

原创粉丝点击