Stack的方法
stack是继承Vector
class Stack extends Vector
特点:栈模式----遍历时元素是先进后出
具体代码实现:
public static void main(String[] args) {
Stack<String> stack = new Stack<>();
//将元素添加到栈顶
stack.push("aaa");
stack.push("bbb");
stack.push("ccc");
stack.push("ddd");
//获取栈顶元素
String peek = stack.peek();
System.out.println("获取栈顶元素:" + peek);//ddd
//获取元素距离栈顶的个数(从1开始)
int search = stack.search("bbb");
System.out.println(search);//3
//判断集合是否不为空
while(!stack.empty()){
String pop = stack.pop();//删除元素,从栈顶开始删
System.out.println(pop);//倒序输出
}
System.out.println("元素个数为:" + stack.size());//0
}
Vector的使用
Vector的历史
Vector是元老级别的类,在JDK1.0开始就是先。JDK1.2开始才有的集合框架的概念 当时绝大部分程序员已经习惯使用Vector,为了更好地推广集合框架的概念,也出于保留Vector的 思想,Java的设计者让Vector多实现了List接口,才将其保留了下来。
创建一个数组,并添加元素
public static void main(String[] args) {
Vector<String> v = new Vector<>();
//添加元素
v.addElement("aaa");
v.addElement("bbb");
v.addElement("ccc");
v.addElement("ddd");
v.addElement("eee");
v.addElement("fff");
v.addElement("ggg");
}
//根据下表删除元素
v.removeElementAt(0);
//根据元素删除元素
v.removeElement("bbb");
遍历元素
Enumeration<String> elements = v.elements();
while(elements.hasMoreElements()){//判断是否有可迭代的元素
String nextElement = elements.nextElement();//返回下一个元素
System.out.println(nextElement);
}
Vector具体的方法,
下面是具体代码实现:
public static void main(String[] args) {
Vector<String> list = new Vector<>();//< >里面的就是泛型
//泛型是什么,操作集合里面的就是什么类型
//添加元素
list.add("小红");
list.add("小白");
list.add("小文");
list.add("小枭");
//设置指定下标上的元素
list.set(2, "王鸿枭");//将下标二的元素设置为王鸿枭
//获取指定下标上的元素
String str = list.get(2);
System.out.println("获取指定下标上的元素:" + str);
//获取元素个数
int size = list.size();
System.out.println("获取元素个数" + size);
//将元素添加到指定位置
list.add(3, "王博文");//添加元素会顶替掉之前元素的位置,将之前的元素往后移动一位
//将newList1中所有的元素添加到list集合的末尾
Vector<String> newList1 = new Vector<>();
Collections.addAll(newList1, "aaa","bbb","cccc","ccc");//利用集合工具类(Collections)批量添加数据
list.addAll(newList1);
//将newList2中所有的元素添加到list集合的指定位置
Vector<String> newList2 = new Vector<>();
Collections.addAll(newList2, "xxx","yyy","zzz","zzz","小光","小明","小强","小华");//利用集合工具类(Collections)批量添加数据
list.addAll(2, newList2);
//清空集合
//list.clear();
System.out.println("判断集合是否包含某个元素:" + list.contains("王博文"));//true
System.out.println("判断集合中是否包含某个子集合:" + list.containsAll(newList1));//true
//true表示没有元素,false表示有元素
System.out.println("判断集合中是否没有元素:" + list.isEmpty());//false
System.out.println("获取元素的下标:" + list.indexOf("王博文"));//7
System.out.println("获取元素在集合中第一次出现的下标:" + list.indexOf("zzz"));//4
System.out.println("获取元素在集合中最后一次出现的下标:" + list.lastIndexOf("zzz"));//5
list.remove(7);//根据下标删除元素
list.remove("小白");//根据元素删除元素
list.removeAll(newList1);//去除交集
list.retainAll(newList2);//保留交集
//从开始下标处(包含)截取到结束下标处(排他)的元素,返回新的集合
List<String> subList = list.subList(1, 5);
//将集合转换为数组
Object[] array1 = subList.toArray();
System.out.println(Arrays.toString(array1));
//将集合转换为指定类型的数组
String[] array2 = new String[subList.size()];
subList.toArray(array2);
System.out.println(Arrays.toString(array2));
System.out.println("--------------------------");
}
几种遍历方法
遍历集合 -- for循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
System.out.println("--------------------------");
遍历集合 -- foreach
for (String element : list) {
System.out.println(element);
}
System.out.println("--------------------------");
遍历集合 -- Iterator
Iterator<String> iterator = list.iterator();
while(iterator.hasNext()){//判断是否有可迭代的元素
String next = iterator.next();//获取下一个元素
System.out.println(next);
}
System.out.println("--------------------------");
遍历集合 -- listIterator
ListIterator<String> listIterator = list.listIterator();
while(listIterator.hasNext()){
String next = listIterator.next();
System.out.println(next);
}
标签:Vector,元素,list,System,特点,vector,println,stack,out
From: https://blog.51cto.com/u_16154651/6495635