10 java里的容器类

xiaoxiao2021-02-28  121

java里有基于动态数组技术封装出来的ArrayList容器类, 它相于c++里的vector类模板。可用于存放各种类型的数据,而且数量没有限制.

用法: ArrayList<在存放的数据类型>  容器对象名; //创建容器对象 如创建一个存放字符串的容器对象:ArrayList<String> l = new ArrayList<String>();

容器对象名.add(数据); //增加要存储的数据到容器对象里 如增加一个字符串到容器对象里: l.add("hello");

获取容器对象里每一项的数据:  像数组一样操作的方法, 如获取容器对象里的每一个字符串并输出:  

for (int i = 0; i < l.size(); i++) { System.out.println(l.get(i).toString()); } 用迭代器的操作方法: Object obj; Iterator<String> it = l.iterator() ; while (it.hasNext()) { obj = it.next(); System.out.println(obj.toString()); }

ArrayList的完成测试代码:

/* Hello.java */ import java.util.ArrayList; import java.util.Iterator; public class Hello { public static void main (String args[]) { ArrayList<String> l = new ArrayList<String>(); l.add("hello"); l.add("nono"); l.add("hell"); for (int i = 0; i < l.size(); i++) { System.out.println(l.get(i).toString()); } Object obj; Iterator<String> it = l.iterator() ; while (it.hasNext()) { obj = it.next(); System.out.println(obj.toString()); } System.out.println("hello"); } }

java里的LinkedList容器里基于链表的技术封装出来的容器类,相当于C++里的list容器类. 使用方法与ArrayList容器类的基本一样。 如用LinkedList容器对象来存放自定义的Student类对象:

/* Hello.java */ import java.util.Iterator; import java.util.LinkedList; class Student extends Object { private String name; private int id; public Student(int id, String name) { this.name = name; this.id = id; } public String toString() { return "id " + id + " name " + name; } } public class Hello { public static void main(String[] args) { // TODO Auto-generated method stub LinkedList<Student> l = new LinkedList<Student>(); //创建一个存放Student对象的容器对象 l.add(new Student(0, "小红")); //增加Student对象到容器对象里 l.add(new Student(1, "小明")); l.add(new Student(2, "大大")); l.add(new Student(3, "小小")); //遍历方法1 for (int i = 0; i < l.size(); i++) System.out.println(l.get(i)); //遍历方法 2 Iterator<Student> it = l.iterator(); while (it.hasNext()) { System.out.println(it.next()); } } }
转载请注明原文地址: https://www.6miu.com/read-18192.html

最新回复(0)