欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java中的泛型类与集合框架

程序员文章站 2022-03-10 17:06:37
...

##泛型类
语法:class 类名 <类型参数,类型参数…>{ }
实例:利用泛型输出某个地点的经纬度
#####重要类

//point代码块的实现
public class Point<T extends Number> {
    private T x;
    private T y;
    
	public Point(T x, T y) {
		super();
		this.x = x;
		this.y = y;
	}
	public T getX() {
		return x;
	}
	public void setX(T x) {
		this.x = x;
	}
	public T getY() {
		return y;
	}
	public void setY(T y) {
		this.y = y;
	}
	@Override
	public String toString() {
		return "("+x+","+y+")";
	}
    
}

####测试类

//细心单词拼写出错
    	Point<Integer> p = new Point<Integer>(13,14);
    	System.out.println(p);
    	Point<Float> q = new Point<Float>(13.0f,14.0f);
    	System.out.println(q);
    	//不匹配T继承的是Number
//    	Point<String> n = new Point<String>("东京34.3","北纬45");

优化

//通配符节省分配空间
Point<?> p; 

##泛型接口
语法:interface 接口名 <类型参数,类型参数,…>{ }
##集合框架
###*集合类关系图 *
java中的泛型类与集合框架实例:利用集合存储用户信息
###基础类:学生
包括两参构造方法、getter和setter方法、以及重新toString方法

public class Student {
    private String name;
    private String password;
    }

###核心代码块
利用集合存储用户信息

public class StudentDataSet {
    private static List<Student> users = new ArrayList<Student>();
    static {
    	users.add(new Student("syp","123"));
    	users.add(new Student("lmh","897"));
    	users.add(new Student("wys","630"));
    	users.add(new Student("huj","456"));
    }
    public static List<Student> getUsers(){
    	return users;
    }
}