其他分享
首页 > 其他分享> > #千锋逆战班,2020.3.5#

#千锋逆战班,2020.3.5#

作者:互联网

在千锋学习的第24天
每一发奋努力的背后,必有加倍的赏赐,
今天学习了泛型的用法和相关案例。
继续努力!

##总结:
7.泛型集合【重点-解决应用问题】:
I.概念:参数化类型、类型安全的集合,强制集合元素的类型必须一致。
II.特点:
1).编译时即可检查,而非运行时抛出异常。
2).访问时,不必类型转换(拆箱)。
3).不同泛型之间引用不能相互赋值,泛型不存在多态。
8.泛型:高级类别的知识,熟练应用,需要时间、经验的积累(常用名称:E = Element / T = Type / K = Key / V = Value)
I.概念:约束-规范类型II.泛型的场景:
1).定义泛型:
A).实例泛型:
a).类:创建对象时,为类所定义的泛型,进行参数化赋值
b).接口:实现接口时,为接口所定义的泛型,进行参数化赋值
B).静态泛型:
a).定义在方法的返回值类型前面:、、<T extends Comparable>、<T extends Comparable<? super T>>
2).定义在方法的形参列表当中:<?>、<? extends Object>、<? super Integer>,不支持使用&9.Collections工具类:概念:集合工具类,定义了除了存取以外的集合常用方法。
I.public static <T extends Comparable<? super T>> void sort(List list) //排序,要 求:必须 实现Comparable,必须 可与自 身类 型比,以及 父类类 型比
II.public static void reverse(List<?> list) //反转、倒置元素
III.public static void shuffle(List<?> list) //随机重置顺序
经验:一级目标能看懂、能调用,二级目标能定义、能设计

##课后习题:
11、C
12、

import java.util.Scanner;
public class Homework12 {

	public static void main(String[] args) {
		System.out.println("请输入一个整数:");
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		java.util.Random r = new java.util.Random();
		StringBuilder str =new StringBuilder();
		
		char []b = new char[3];
		for (int i = 0; i < a; i++) {
			b[0] =  (char) (48+r.nextInt(10));
			b[1] =  (char) (65+r.nextInt(26));
			b[2] =  (char) (97+r.nextInt(26));
			str.append(String.valueOf(b[r.nextInt(3)]));
		}
		System.out.println(str);
	}

}

13、

public class Homework13 {

	public static void main(String[] args) {
		String str = "hello world word health";
		if(str.contains("he")){
			for (int j = 0; j < str.length(); j++) {
				if(str.indexOf("wo",j)!=str.indexOf("wo",j+1)){
					System.out.println(j);
				}
			}
		}

	}

}

14、

import java.util.ArrayList;
import java.util.List;

public class Homework14 {
	public static void main(String[] args) {
		
		List<Student>list=new ArrayList<Student>();
		list.add(new Student("Tom",18,100,"class05"));
		list.add(new Student("Jerry",22,70,"class04"));
		list.add(new Student("Owen",25,90,"class05"));
		list.add(new Student("Jim",30,80,"class05"));
		list.add(new Student("Steve",28,66,"class06"));
		list.add(new Student("Kevin",24,100,"class04"));
		int allage=0;
		double allscore =0;
		for (int i = 0; i < list.size(); i++) {
			allage = allage+list.get(i).age;
			allscore = allscore+list.get(i).score;
		}
		int aveage = allage/list.size();
		double avescore = allscore/list.size();
		System.out.println(aveage);
		System.out.println(avescore);
	}
}
class Student{
	String name;
	int age;
	double score;
	String classNum;
	public Student(String name, int age, double score, String classNum) {
		super();
		this.name = name;
		this.age = age;
		this.score = score;
		this.classNum = classNum;
	}	
}

标签:千锋,String,list,2020.3,逆战班,str,泛型,new,public
来源: https://blog.csdn.net/Zqs456/article/details/104683809