hash和list的运用
来源:互联网 发布:java udp函数 编辑:程序博客网 时间:2024/05/17 21:29
利用Map和List统计各班的总分和人数
面试
package list.map;
public class Student {
private String name;
private String number;
private double score;
public Student() {}
public Student(String name,String number,double score) {
this.name = name;
this.number = number;
this.score = score;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
public void setNumber(String number) {
this.number = number;
}
public String getNumber() {
return this.number;
}
public void setScore(double score) {
this.score = score;
}
public double getScore() {
return this.score;
}
}
package list.map;
import java.util.ArrayList;
import java.util.List;
public class ClassRoom {
private String number;
private double total;
private List list = null;
public ClassRoom() {
list = new ArrayList();
}
public ClassRoom(String number,double total) {
this();
this.number = number;
this.total = total;
}
public void setNumber(String number) {
this.number = number;
}
public String getNumber() {
return this.number;
}
public void setTotal(double total) {
this.total = total;
}
public double getTotal() {
return this.total;
}
public void add(Student stu) {
list.add(stu);
}
public List getList() {
return this.list;
}
}
package list.map;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class AppMain {
public static void main(String[] args) {
// TODO Auto-generated method stub
List list = new ArrayList();
add(list);
Map map = new HashMap<>();
count(map, list);
print(map);
}
public static void add(List list) {
list.add(new Student("a","网络151",10));
list.add(new Student("b","网络151",10));
list.add(new Student("c","网络152",10));
list.add(new Student("d","网络153",10));
list.add(new Student("e","网络153",10));
}
public static void count(Map map,List list) {
for(Student stu : list) {
if(!map.containsKey(stu.getNumber())) {
ClassRoom cr = new ClassRoom(stu.getNumber(),stu.getScore());
map.put(stu.getNumber(), cr);
cr.add(stu);
} else {
ClassRoom cr = map.get(stu.getNumber());
cr.setTotal(cr.getTotal() + stu.getScore());
cr.add(stu);
}
}
}
public static void print(Map map) {
Set> set = map.entrySet();
Iterator> it = set.iterator();
while(it.hasNext()) {
Map.Entry entry = it.next();
ClassRoom cr = entry.getValue();
System.out.println(cr.getNumber() +" "+cr.getTotal());
for(Student stu : cr.getList()) {
System.out.print(stu.getName() +" ");
}
System.out.println();
}
}
}
网络152 10.0
c
网络151 20.0
a b
网络153 20.0
d e
面试
package list.map;
public class Student {
private String name;
private String number;
private double score;
public Student() {}
public Student(String name,String number,double score) {
this.name = name;
this.number = number;
this.score = score;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
public void setNumber(String number) {
this.number = number;
}
public String getNumber() {
return this.number;
}
public void setScore(double score) {
this.score = score;
}
public double getScore() {
return this.score;
}
}
package list.map;
import java.util.ArrayList;
import java.util.List;
public class ClassRoom {
private String number;
private double total;
private List list = null;
public ClassRoom() {
list = new ArrayList();
}
public ClassRoom(String number,double total) {
this();
this.number = number;
this.total = total;
}
public void setNumber(String number) {
this.number = number;
}
public String getNumber() {
return this.number;
}
public void setTotal(double total) {
this.total = total;
}
public double getTotal() {
return this.total;
}
public void add(Student stu) {
list.add(stu);
}
public List getList() {
return this.list;
}
}
package list.map;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class AppMain {
public static void main(String[] args) {
// TODO Auto-generated method stub
List list = new ArrayList();
add(list);
Map map = new HashMap<>();
count(map, list);
print(map);
}
public static void add(List list) {
list.add(new Student("a","网络151",10));
list.add(new Student("b","网络151",10));
list.add(new Student("c","网络152",10));
list.add(new Student("d","网络153",10));
list.add(new Student("e","网络153",10));
}
public static void count(Map map,List list) {
for(Student stu : list) {
if(!map.containsKey(stu.getNumber())) {
ClassRoom cr = new ClassRoom(stu.getNumber(),stu.getScore());
map.put(stu.getNumber(), cr);
cr.add(stu);
} else {
ClassRoom cr = map.get(stu.getNumber());
cr.setTotal(cr.getTotal() + stu.getScore());
cr.add(stu);
}
}
}
public static void print(Map map) {
Set> set = map.entrySet();
Iterator> it = set.iterator();
while(it.hasNext()) {
Map.Entry entry = it.next();
ClassRoom cr = entry.getValue();
System.out.println(cr.getNumber() +" "+cr.getTotal());
for(Student stu : cr.getList()) {
System.out.print(stu.getName() +" ");
}
System.out.println();
}
}
}
网络152 10.0
c
网络151 20.0
a b
网络153 20.0
d e
阅读全文
0 0
- hash和list的运用
- hash的运用
- hash算法的运用
- Hash Table哈希表和Hash List哈希链表的知识汇总
- range,list和Hash 分区的性能
- poj 3349 hash的运用
- hash算法的实际运用
- C++ list的运用
- List列表的运用
- hashmap, map, vector, list ...hash table 的比较和分析
- j2me的form,list和command的综合运用
- hdu 4020 hash的精妙运用
- oracle的range,hash,list
- j2me的list的 运用
- 创建range list和hash分区表
- .Net Core下 Redis的String Hash List Set和Sorted Set的例子
- Hash表运用
- Hash 表运用
- 阿里云服务器lamp常用配置操作
- 有向图的邻接矩阵的计算
- HashMap的重要应用统计次数
- C语言 计算程序运行时间(精确到毫秒/微秒)
- SO_REUSEADDR
- hash和list的运用
- linux|tgz解压出错
- Java中Vector和ArrayList的区别
- ubuntu中关于移动文件,进入目录的一些简单操作
- 用回车键向无序列表添加不重复的数据
- 冒泡排序
- 斯诺登的密码
- (一)Jvm运行时数据区
- 选择排序