摘要:
可变参数:定义方法的时候不知道该定义多少个参数 格式: 修饰符 返回值类型 方法名(数据类型… 变量名){ } 注意: 这里的变量其实是一个数组 如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个 public static <T> List<T> asList(T... a):把 阅读全文
摘要:
静态导入: 格式:import static 包名….类名.方法名; 可以直接导入到方法的级别 静态导入的注意事项: A:方法必须是静态的 B:如果有多个同名的静态方法,容易不知道使用谁?这个时候要使用,必须加前缀。 由此可见,意义不大,所以一般不用,但是要能看懂。 阅读全文
摘要:
需求:ArrayList存储自定义对象并遍历。要求加入泛型,并用增强for遍历。 A:迭代器 B:普通for C:增强for LinkedList,Vector,Colleciton,List等存储继续练习 增强for是用来替迭代器。 阅读全文
摘要:
JDK5的新特性:自动拆装箱,泛型,增强for,静态导入,可变参数,枚举 增强for:是for循环的一种。 格式: for(元素数据类型 变量 : 数组或者Collection集合) { 使用变量即可,该变量就是元素 } 好处:简化了数组和集合的遍历。 弊端: 增强for的目标不能为null。 如何 阅读全文
摘要:
泛型高级(通配符) ?:任意类型,如果没有明确,那么就是Object以及任意的Java类了 ? extends E:向下限定,E及其子类 ? super E:向上限定,E极其父类 阅读全文
摘要:
写一个ObjectTool类 泛型方法:把泛型定义在方法上 格式 public <泛型类型> 返回类型 方法名(泛型类型) 这样的好处是: 这个泛型方法可以接收任意类型的数据 再写一个测试类 先写一个泛型接口类 泛型接口:把泛型定义在接口上 实现类: 测试类 阅读全文
摘要:
ArrayList存储字符串并遍历 我们按照正常的写法来写这个程序, 结果确出错了。 为什么呢? 因为我们开始存储的时候,存储了String和Integer两种类型的数据。 而在遍历的时候,我们把它们都当作String类型处理的,做了转换,所以就报错了。 但是呢,它在编译期间却没有告诉我们。 所以, 阅读全文
摘要:
请用LinkedList模拟栈数据结构的集合,并测试 题目的意思是: 你自己的定义一个集合类,在这个集合类内部可以使用LinkedList模拟。 阅读全文
摘要:
了解 LinkedList的特有功能: A:添加功能 public void addFirst(Object e) public void addLast(Object e) B:获取功能 public Object getFirst() 得到第一个元素 public Obejct getLast( 阅读全文
摘要:
1 /* 2 * Vector的特有功能: 3 * 1:添加功能 替代 4 * public void addElement(Object obj) -- add() 5 * 2:获取功能 6 * public Object elementAt(int index) -- get() 7 * public Enumeration elements() ... 阅读全文
摘要:
需求:去除集合中自定义对象的重复值(对象的成员变量值都相同 注意: 我们按照和字符串一样的操作,发现出问题了。 为什么呢? 我们必须思考哪里会出问题? 通过简单的分析,我们知道问题出现在了判断上。 而这个判断功能是集合自己提供的,所以我们如果想很清楚的知道它是如何判断的,就应该去看源码。 conta 阅读全文
摘要:
需求: ArrayList去除集合中字符串的重复值(去掉相同的字符串) 分析: 第一种做法:创建一个新的空集合: A:创建1个具有相同字符串的集合 B:创建1个空的集合 C:遍历第一个集合里面的元素 D:把遍历的元素一个个放进去第二个集合中,但有条件 a:若第二个集合中没有这个元素,则添加进去 b: 阅读全文