package ArrayListClass;
import java.util.*;
public class L4_1 {
public static void main(String []args)
{
ArrayList aa1=new ArrayList();
System.out.println("大小为:"+aa1.size());
XS xs1=new XS("小明",15,90);
XS xs2=new XS("小李",16,89);
XS xs3=new XS("小刚",18,99);
XS xs4=new XS("小赵",19,85);
XS xs5=new XS("小吴",19,90);
aa1.add(xs1);
aa1.add(xs2);
aa1.add(xs3);
aa1.add(xs4);
aa1.add(xs5);
for(int i=0;i<aa1.size();i++)
{
XS tv=(XS)aa1.get(i);
System.out.println("第"+(i+1)+"个学生姓名:"+tv.GetName()+" 身高:"+tv.Getheight()+"cm 年龄:"+tv.GetAge());
}
}
}
class XS{
private String name;
private int age;
private int height;
XS(String name,int age,int height)
{
this.name=name;
this.age=age;
this.height=height;
}
public String GetName()
{
return this.name;
}
public int GetAge()
{
return this.age;
}
public int Getheight()
{
return this.height;
}
}
package ArrayListStr;
import java.util.*;
public class L4_2 {
public static void main(String []args)
{
ArrayList aa1=new ArrayList();
System.out.println("大小为:"+aa1.size());
XS xs1=new XS("小明",15,90);
XS xs2=new XS("小李",16,89);
XS xs3=new XS("小刚",18,99);
XS xs4=new XS("小赵",19,85);
XS xs5=new XS("小吴",19,90);
aa1.add(xs1);
aa1.add(xs2);
aa1.add(xs3);
aa1.add(xs4);
aa1.add(xs5);
System.out.println("移除前排序:");
for(int i=0;i<aa1.size();i++)
{
XS tv=(XS)aa1.get(i);
System.out.println("第"+(i+1)+"个学生姓名:"+tv.GetName()+" 身高:"+tv.Getheight()+"cm 年龄:"+tv.GetAge());
}
aa1.remove(1);
System.out.println("移除后排序:");
for(int i=0;i<aa1.size();i++)
{
XS tv=(XS)aa1.get(i);
System.out.println("第"+(i+1)+"个学生姓名:"+tv.GetName()+" 身高:"+tv.Getheight()+"cm 年龄:"+tv.GetAge());
}
}
}
class XS{
private String name;
private int age;
private int height;
XS(String name,int age,int height)
{
this.name=name;
this.age=age;
this.height=height;
}
public String GetName()
{
return this.name;
}
public int GetAge()
{
return this.age;
}
public int Getheight()
{
return this.height;
}
}
package ArrayListStr;
import java.util.*;
//import java.io.*;
public class LinkedList_Str
{
public static void main(String[] args)
{
LinkedList bb=new LinkedList();
Sp3 sp1=new Sp3("001","话梅",(float)4.5);
Sp3 sp2=new Sp3("002","薯片",(float)8.5);
//bb.addFirst(sp1);
//bb.addFirst(sp2);
bb.addLast(sp1);
bb.addLast(sp2);
System.out.println("商品编号\t\t商品名称\t\t商品价格");
for(int i=0;i<bb.size();i++)
{
Sp3 Temp=(Sp3)bb.get(i);
//System.out.println(Temp.GetNo()+"\t\t\t"+Temp.GetCommodityName()+"\t\t\t"+Temp.GetPrice());
Temp.PrintCommodityInformation();
}
}
}
class Sp3
{
private String No;
private String CommodityName;
private float price;
Sp3(String No,String CommodityName,float price)
{
this.No=No;
this.CommodityName=CommodityName;
this.price=price;
}
public String GetNo()
{
return this.No;
}
public void SetNo(String No)
{
this.No=No;
}
public String GetCommodityName()
{
return this.CommodityName;
}
public void SetCommodityName(String CommodityName)
{
this.CommodityName=CommodityName;
}
public float GetPrice()
{
return this.price;
}
public void SetPrice(float price)
{
this.price=price;
}
public void PrintCommodityInformation()
{
System.out.println(this.No+"\t\t\t"+this.CommodityName+"\t\t\t"+this.price);
}
}
package Stack_StrClass;
import java.util.*;
public class Stack_Str
{
public static void main(String []args)
{
HashMap ee=new HashMap();
Sp sp1=new Sp("001","香肠",20f);
Sp sp2=new Sp("002","果脯",10f);
ee.put("001",sp1);
ee.put("002",sp2);
if(ee.containsKey("002"))
{
System.out.println("该食品信息为:");
Sp sp=(Sp)ee.get("002");
sp.printAllCommodityInformation();
}
}
}
class Sp{
private String No;
private String CommodityName;
private float price;
Sp(String No,String CommodityName,float price)
{
this.No=No;
this.CommodityName=CommodityName;
this.price=price;
}
public String GetNo()
{
return this.No;
}
public void SetNo(String No)
{
this.No=No;
}
public String GetCommodityName()
{
return this.CommodityName;
}
public void SetCommodityName(String CommodityName)
{
this.CommodityName=CommodityName;
}
public float GetPrice()
{
return this.price;
}
public void SetPrice(float price)
{
this.price=price;
}
public void printAllCommodityInformation()
{
System.out.println(this.No+"\t\t\t"+this.CommodityName+"\t\t\t"+this.price);
}
}
package VectorStack_Str;
import java.util.*;
import java.io.*;
public class Vector_Stack_Str{
public static void main(String [] args)
{
System.out.println("商品序号\t\t商品名称\t\t商品价格\t\t");
//Vector cc=new Vector();
Stack cc=new Stack();
Sp4 sp1=new Sp4("001","巧克力",(float)2.5);
Sp4 sp2=new Sp4("002","果浦",(float)10.5);
cc.add(sp1);
cc.add(sp2);
for(int i=0;i<cc.size();i++)
{
Sp4 Temp=(Sp4)cc.get(i);
Temp.printAllCommodityInformation();
}
}
}
class Sp4{
private String No;
private String CommodityName;
private float price;
Sp4(String No,String CommodityName,float price)
{
this.No=No;
this.CommodityName=CommodityName;
this.price=price;
}
public String GetNo()
{
return this.No;
}
public void SetNo(String No)
{
this.No=No;
}
public String GetCommodityName()
{
return this.CommodityName;
}
public void SetCommodityName(String CommodityName)
{
this.CommodityName=CommodityName;
}
public float GetPrice()
{
return this.price;
}
public void SetPrice(float price)
{
this.price=price;
}
public void printAllCommodityInformation()
{
System.out.println(this.No+"\t\t\t"+this.CommodityName+"\t\t\t"+this.price);
}
}
package L4_6_Str;
import java.util.*;
public class L4_6
{
public static void main(String[] args)
{
Hashtable ff=new Hashtable();
ArrayList<Ls> ff=new ArrayList<Ls>();
Ls ls1=new("薯片",5f);
ff.add(ls1);
Ls cls=ff.get(0);
Y1 hy1=(Y1)ff.get(0);
}
}
class Ls
{
private String No;
private flaot price;
Ls(String No,float price)
{
this.No=No;
this.price=price;
}
public void SetNo(String No)
{
this.No=No;
}
public String GetNo()
{
return this.No;
}
public void SetPrice()
{
this.price=price;
}
public float GetPrice()
{
return this.price;
}
}
t集合类与Map集合类的区别:
键值:能唯一标识某一事物的值称为键值
(注意:能唯一标识某一事物的值称为键值)
(注意:键值是为了唯一标识事物而单独添加的属性,一定不要用事物本身的
属性来做键值)
List没有键值,Map有键值
ArrayList和Vector的区别与HashMap和Hashtable的区别相同,它们是:
ArrayList和HashMap都是线程异步的,所以它们的特点是效率高但是安全性低
Vector和Hashtable都是线程同步的,所以它们的特点是效率低但是安全性高。
泛型和反射机制
由于类型转换的错误,java虚拟机在编译时不会报错,而在运行时报异常,所以安全隐患
非常明显,为些我们需要用泛型来弥补这一问题,有了泛型,我们在集合中添加对象的、
时候,就不用再强转了。反射机制是将泛型固定的类的所有方法和成员全部可以显示出
来,以供程序员可以确定程序的编写是否有误的机制
1.List结构集合类
ArrayList LinkedList Vector Stack
2.Map结构集合类
HashMap HashTable
3.Set结构集合类
HashSet TreeSet
4.Queue结构集合类和Queue接口