Java中有一种特殊的类,被称为容器类,这种类可以保存对象。且相比数组它的大小可以“无限”增大
标准容器类
标准声明方式:
ArrayList<String> a = new ArrayList<String>( );
从声明的方式可以看出容器类的两大要素:
1.容器的类型(如:ArrayList)
2.元素的类型(如:String)
容器的类型决定了容器储存对象的方式,容器的类型决定了它所能储存的对象。注意:如果想要储存基本数据类型,在元素的位置需要使用与其相对应的包裹类型。见:基本类型与包裹类型对照表。
容器类的一些基本方法:
Notes.add(“String”);
作用:向容器内增添元素
Notes.size();
作用:其返回值为容器内元素的数量
Notes.get(index);
作用:返回序号为index的元素
Notes.add(index,String);
作用:将String添加到index的位置
Notes.remove(index);
作用:删除位于index的元素,并返。0回被删除的元素
Notes.toArray(a);
作用:将容器内的元素全部写入数组a
Notes.isEmpty();
作用:检查容器是否为空,如果没有元素则返回true
Notes.contains(Object elem)
作用:如果该对象存在则返回true
Notes.indexOf(Object elem)
作用:返回对象所对应的引索,或返回-1
集合容器(Set)
HashSet<String> s= new HashSet<String>();
集合容器中有类似ArrayList的操作,但是不同的是类容器更像一个数学意义上的集合,里面的元素没有顺序且没有重复元素;
可以用System.out.println(容器名);来直接输出容器内的元素。
散列表(Hash)
HashMap<Interger , String> a =new HashMap<Integer ,String>( );
前者是对应的触发键,后者是对应的值。
HashMap的相关操作:
a.put(K , V);
作用:向对应的Hash表里加入元素
a.get(K);
作用:返回K对应的V值
a.containsKey(K);
作用:用来判断K对应的值是否存在,如果存在则返回ture
对于Hash表来说键是唯一的。
Hash表不能直接用for-each循环,可以用如下:
for(Integer k : a.keySet() )
/*通过keySet将所有的key(键)列入一个容器,
再将容器内的值for-each进入k,而后再通过get查找*/
{
String s = a.get(K);
System.out.println(s);
}