您的位置:首页 > 编程语言 > Java开发

java 堆栈的使用方法说明

2015-03-09 15:23 260 查看
最近偶然开始对stack进行研究,发现这个还蛮简单的,与类似的链表集合不一样的是,stack可以通过直接new stack()创建。

stack数据存储方式为“后进先出”的方式,例如:

Stack<String> stack = new Stack<String>();
stack.add("zhangsan");
stack.add("lisi");
stack.add("wangwu");
stack.add("qianliu");
stack.add("zhaoda");
int index = stack.search("qianliu");// 寻找对象位置
int index1 = stack.search("zhaoda");// 寻找对象位置
System.out.println("位置为:"+index+":"+index1);
stack.add(3, "孙二娘");

String first=stack.firstElement();
System.out.println("first="+first);
stack.push("王五");
System.out.println("top="+stack.lastElement());

java支持堆栈中对象元素为null,也可以通过设置setSize(int num)使得数据为null。

在stack中,可以发现最后添加的数据“王五”需要通过lastElement方法获取,如果需要采用search获取位置index,那么可以预计位置为

1.stack中对数据已经存在的数据的操作方法都提供了返回参数如:String delete=stack.pop();stack提供了直接添加入list集合的方法。

下面是对stack中数据的遍历:

最后介绍一下在堆栈中添加list集合:

Stack<String> stack = new Stack<String>();
stack.add("zhangsan");
stack.add("lisi");
stack.add("wangwu");
stack.add("qianliu");
stack.add("zhaoda");
stack.add(null);
List<String> list=new ArrayList<String>();
list.add("A");
list.add("B");
list.add("C");
stack.addAll(list);
System.out.println("size="+stack.size());
Iterator<String> it=stack.iterator();
while(it.hasNext()){
String object=it.next();
System.out.print(object+",");
}
输出结果为:size=9

zhangsan,lisi,wangwu,qianliu,zhaoda,null,A,B,C,

以上对stack的操作皆来自于对jdk中stack自带方法的处理。并不具备实际的企业开发意义,但是了解堆栈也为以后选择存储数据提供了一个新的方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息