您的位置:首页 > 其它

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

2013-01-03 22:39 387 查看
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());
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐