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());
}
}
}
Stack 类的操作,将Stack中的数据添加到Map里面
最新推荐文章于 2022-08-15 16:56:58 发布