第十一章:集合(二)

  1. Map类型集合:

    1. Map类型的集合每个元素都有两个信息:键  ,  值

    2. Map中键不能相同。一个键映射一个值。

    3. 键,值默认为Object类型。

    4. put(键,值) 是Map集合添加元素的方法。

    5. get(键)  返回值

    6. remove(键)  删除值。

    7. containsKey(键)  判断键。


  2. Collections工具类

    1. Conllections 主要用于List类集合。

    2. Conllections.sort(List)  对List集合中的元素按升序排列。

    3. Conllections.reverse(List)  倒序

    4. Conllections.max()  找出最大元素,返回值是Object类型。也可用在set中。

    5. Conllections.min()  找出最小元素,返回值是Object类型。也可用在set中。

  3. Arrays工具类

    1. asList() 将数组转换为List类型集合。

    2. binarySearch()  二分查找。

    3. sort()  数组排序。

  4. 泛型

    1. 不固定的数据类型。

    2. 声明:类名后加<泛型1,泛型2,泛型3,...>

[修饰符]  {class/interface}  类/接口  <泛型1,泛型2,泛型3,...>

泛型默认是Object类型。泛型只能是引用数据类型。



作业1

使用Scanner从控制台读取一个字符串,统计字符串中每个字符出现的次数,要求使用学习过的知识完成以上要求

实现思路根据Set、List、Map集合的特性完成

 

import java.util.HashSet;

import java.util.Scanner;

import java.util.Set;


public class ZY1 {


public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

String s = sc.nextLine();

char[] ch = s.toCharArray();

HashSet a = new HashSet();

for(int i=0;i<ch.length;i++){

a.add(ch[i]);

}

for (Object o : a) {

int j = 0;

char  b=(Character) o;

for (int i = 0; i < ch.length; i++) {

if (b== ch[i]) {

j++;

}

}

System.out.println(b + "," + j);

}

}

}



作业2

某中学有若干学生(学生对象放在一个List中),每个学生有一个姓名属性、班级名称属性(String)和考试成绩属性(int),

某次考试结束后,每个学生都获得了一个考试成绩。请打印出每个班级的总分和平均分。

 


import java.util.ArrayList;


public class ZY2 {

String name;

String banji;

double chengji;


public  ZY2(String name,String banji,double chengji){

this.name=name;

this.banji=banji;

this.chengji=chengji;

}


public static void main(String[] args) {

double zong1=0;

double zong2=0;

int renshu1=0;

int renshu2=0;

ZY2 zhangs=new ZY2("张三","一班",33);

ZY2 wangkai=new ZY2("王凯","二班",83);

ZY2 liushaojie=new ZY2("刘绍杰","二班",88);

ZY2 lisi=new ZY2("李四","一班",45);

ZY2 xudesheng=new ZY2("许德生","一班",85);

ArrayList<ZY2> a=new ArrayList<ZY2>();

a.add(zhangs);

a.add(wangkai);

a.add(liushaojie);

a.add(lisi);

a.add(xudesheng);

for(int i=0;i<a.size();i++){

if(a.get(i).banji=="一班"){

zong1=zong1+a.get(i).chengji;

renshu1++;

}else if(a.get(i).banji=="二班"){

zong2=zong2+a.get(i).chengji;

renshu2++;

}

}

System.out.println("一班的总成绩是:"+zong1+" 平均成绩是:"+zong1/renshu1);

System.out.println("二班的总成绩是:"+zong2+" 平均成绩是:"+zong2/renshu2);


}

}




你可能感兴趣的:(java,泛型,Arrays,Map集合,Conllections)