P523 集合-使用Iterator遍历Collection
package com.collection;
import org.junit.Test;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class IteratorTest {
@Test
public void test1(){
Collection coll = new ArrayList();
coll.add(123);
coll.add(456);
coll.add(new Person("Jerry",20));
coll.add(new String("Tom"));
coll.add(false);
Iterator iterator = coll.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
}
}
P524 集合-迭代器Iterator的执行原理
P525 集合-迭代器Iterator遍历集合的两种错误写法
@Test
public void test2(){
Collection coll = new ArrayList();
coll.add(123);
coll.add(456);
coll.add(new Person("Jerry",20));
coll.add(new String("Tom"));
coll.add(false);
Iterator iterator = coll.iterator();
while((iterator.next()) != null){
System.out.println(iterator.next());
}
while(coll.iterator().hasNext()){
System.out.println(coll.iterator().next());
}
}
P526 集合-Iterator迭代器remove的使用
@Test
public void test3(){
Collection coll = new ArrayList();
coll.add(123);
coll.add(456);
coll.add(new Person("Jerry",20));
coll.add(new String("Tom"));
coll.add(false);
Iterator iterator = coll.iterator();
while (iterator.hasNext()){
Object obj = iterator.next();
if ("Tom".equals(obj)){
iterator.remove();
}
}
iterator = coll.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
}
P527 集合-新特性foreach循环遍历集合或项目
package com.collection;
import org.junit.Test;
import java.util.ArrayList;
import java.util.Collection;
public class ForTest {
@Test
public void test1(){
Collection coll = new ArrayList();
coll.add(123);
coll.add(456);
coll.add(new Person("Jerry",20));
coll.add(new String("Tom"));
coll.add(false);
for (Object obj : coll) {
System.out.println(obj);
}
}
@Test
public void test2(){
int[] arr = new int[]{1,2,3,4,5,6};
for (int i : arr) {
System.out.println(i);
}
}
@Test
public void test3(){
String[] arr = new String[]{"MM","MM","MM"};
for (int i = 0; i < arr.length; i++) {
arr[i] = "GG";
}
for (String s : arr) {
s = "GG";
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
P528 集合-List接口常用实现类的对比
package com.collection;
public class ListTest {
}
P529 集合-ArrayList的源码分析
P530 集合-LinkedList的源码分析
P531 集合-Vector的源码分析
P532 集合-List接口的常用方法测试
package com.collection;
import org.junit.Test;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ListTest {
@Test
public void test1(){
ArrayList list = new ArrayList();
list.add(123);
list.add(456);
list.add("AA");
list.add(new Person("Tom",12));
list.add(456);
System.out.println(list);
list.add(1,"BB");
System.out.println(list);
List list1 = Arrays.asList(1, 2, 3);
list.addAll(list1);
System.out.println(list.size());
System.out.println(list.get(0));
}
@Test
public void test2(){
ArrayList list = new ArrayList();
list.add(123);
list.add(456);
list.add("AA");
list.add(new Person("Tom",12));
list.add(456);
int i = list.indexOf(456);
System.out.println(i);
Object obj = list.remove(0);
System.out.println(obj);
System.out.println(list);
list.set(1,"CC");
System.out.println(list);
List list1 = list.subList(1, 3);
System.out.println(list1);
}
}
P533 集合-List遍历及方法总结
@Test
public void test3(){
ArrayList list = new ArrayList();
list.add(123);
list.add(456);
list.add("AA");
Iterator iterator = list.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
for (Object obj : list) {
System.out.println(obj);
}
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}