java容器

对象的集合

数组

对象数组保存的时对象的引用,基本类型数组保存的时基本类型的值。
数组标识符只是一个引用,指向堆中的对象
返回一个数组与返回其他对象并没有什么区别,只是在方法中定义即可。

比较功能

实现java.lang.Comparable接口,接口只有一个方法:comparaTo(),如果当前小于参数则反回负值。
Collections类中包含一个Comparator接口,可以反转自然的排序顺序。

容器

容器是用来保存对象的
Collection保存的的对象都服从一些规则
Map保存的是一个对对象,对应着键值,单独的键或者值都可以转换成Collection
list:以特定的顺序保存一组元素
set:元素不能重复

容器的打印

import java.util.*;
public class PrintContain{
	static Collection fill(Collection c){
		c.add("a");
		c.add("b");
		return c;
	}
	static Map fill(Map m){
		m.put("1","a");
		m.put("2","b");
		return m;
	}
	public static void main(String args[]){
		ArrayList<String> a =new ArrayList<String>();
		String b[]={"A","B"};
		HashMap<String,String> c =  new HashMap<String,String>();
		
		System.out.println("容器输出"+fill(a));
		System.out.println("数组输出格式:"+b);
		System.out.println("容器输出"+fill(c));
	}
}

结果:
picture

直接打印容器可以清楚的显示内容,而数组则不行。

填充容器

容器的缺点

当对象存入容器中时类型的信息将会丢失,因为容器只保存object的引用,object是所有类的基类。在存入对象时可以接受任何类型,当取出时需要进行类型的强制转话。类型不符合的话将会报错runtimeexception。
但容器对于String类有着特殊的支持,会隐式的调用toString()方法

System.out.println("nnnn"+object类型);//调用时object对象会隐式调用toString(),并不会报错!

为了弥补这种缺点:在添加元素的过程中应该明确的指出对象的类型,返回时也应该调用强制转换。

迭代器

collection对象调用Iterator()方法生成iterator对象,该对象有三个方法:
next():返回下一个元素,第一次掉哟个返回第一个元素
hasNext():判断下一个元素是否存在
remove():将对象返回的元素删除

ArrayList a = new  ArrayList();
Iterator i = a.Iterator();
while(i.hasNex()){
 	System.out.println(i.next);
}

容器的分类

在这里插入图片描述在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值