虽熬夜不是一个好的习惯,但对于我们学IT的来说有时候就是因为很想得原因 于是就留了下来自己安静的学习
希望 有助于我和我们同java的学习者有个深度的理解
// 本java 主要表达了list接口的输入与输出 因为List 与Iterator 等很多接口是相互继承,并且都是接口 所以 List能与他们
// 相互转换 可以使用他们自己特有的方法。
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
public class Dom1 {
public static void main(String[] args) {
List
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
//通过迭代器来迭代数据
Iterator
while( lit.hasNext()){
System.out.println(lit.next());
}
//在指定位子插入数据
list.add(0,"sss");
for(int i=0; i
}
}
}
--------------------------------------------------------------------------------------------------------------------------------------
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.Vector;
//此代码是基础代码, 理解List中的vector和list中的属性。( iteration 迭代器)
//将集合转换成obj 对象 将集合转换成数组,将数组转换成集合的一系列方法
//重点: 集合.toarrays() 集合.aslist()
public class Demo {
public static void main (String[] args){
int arr[]={1,2,3};
//
for(int a: arr){
System.out.println(a);
}
//多态。多态。多态。多态。把子类对象赋值给父类对象
List
list.add("one");
list.add("two");
list.add("three");
for(String temp :list){
System.out.println(temp);
}
Iterator
while(it.hasNext()){
String t=it.next();
System.out.println(t);
}
Object objs[] = list.toArray();//toarray 返回包含将集合转换成一个obj的对象
for ( Object obj: objs){
String tt= (String) obj;
System.out.println(tt);
}
// 将集合 直接转换指定数组类型
String strs[]=list.toArray(new String[0]);
System.out.println("-------");
//将数组转换成集合
/* int a[] = {1,2,3} ;
List
*///或是 用Integer
Integer arrs[]= new Integer[]{1,3,4,5,};
List
for ( Integer in:i ){
System.out.println(in);
}
System.out.println("------");
System.out.println(i.size());
if (i.contains(4)){ //s看集合众是否含有某个元素
System.out.println("含有4");
}else{
System.out.println("含有4");
}
}
}
------------------------------------------------------------------------------
/**
* 本java 讲述了LinkedList 的用法 是和Iterator的用法相同的 并且扩展了一些方法
* 扩展的方法有 压栈 出栈 是为 数据添加以单线程(基于链表形式)的方式修改。
*/
// 特殊理解 Arraylist 和linkedlist的区别:
/**
* 1,ArrayList 是实现了基于动态的数组的结构,LinkedList是基于链表的数据可结构
* 2,对于随机访问的get和set,ArrayList觉得优越于LinkedList,因为LinkedList要移动指针
* -----------ArrayList〉〉〉〉LInkedList-------
* 3,对于新增和三处炒作add和remove等方法的使用,LinkedList比较占优势,
* 或者说 Iterator 比较对数据更好操作一点,因为ArrayList要移动数据。
* 但对于单条数据的插入或删除,ArrayList的数度反而优越于LinkedList,但若是
* 批量的随机的擦如删除数据,LinkedList的数度大大优越于ArrayList,因为ArrayList每插入
* 一条数据都会移动插入点以后的数据。
* 总的来说 ArrayList适用于单条数据的修改
* LinkedList适用于多条数据的修改
*
*/
import java.util.Iterator;
import java.util.LinkedList;
public class Demo2 {
public static void main(String[] args) {
// List 接口的链接列表实现
LinkedList
list.add("2");
list.add("r");
list.add("f");
list.push("one");// 放在第一个下标的位子
list.push("two");
list.push("three");
for(int i=0;i
}
//给List 创建迭代器
Iterator
//与 通用 LinkedList
while( lits.hasNext()){
System.out.println(list.pop()); //获取并删除
// System.out.println(list.pop());只获取 不删除
}
System.out.println(list.size());//此时 集合中为空
}
}