输入数字进行筛选
package com.zhongruan;
public class BL {
private int height;
private int wight;
public int getHeight() {
return height;
}
public void setHeight(int height) {
if(20<height&&height<300){
this.height = height;
}else {
System.out.println("可能是个外星人");
}
}
public int getWight() {
return wight;
}
public void setWight(int wight) {
this.wight = wight;
}
/* public BL() {
}*/
/*public BL(int height, int wight) {
this.height = height;
this.wight = wight;
}*/
}
配置Test文件
package com.zhongruan;
import java.util.*;
public class Test4 {
public List<BL> getBLs() {
List<BL> bls = new ArrayList<>();
Scanner input = new Scanner(System.in);
for (int i = 1; i < 4; i++) {
System.out.println("请输入第" + i+ "个美女的身高:");
int h = input.nextInt();
System.out.println("请输入第" + i + "个美女的体重:");
int w = input.nextInt();
BL bl=new BL();
bl.setHeight(h);
bl.setWight(w);
bls.add(bl);
}
return bls;
}
public Map<String, Integer> getSumHAndSumW(List<BL> bls) {
//增强for循环
int sumH = 0;
int sumW = 0;
for (BL bl : bls) {
sumH = sumH + bl.getHeight();
sumW = sumW + bl.getWight();
}
System.out.println(sumH+"====="+sumW);
Map map = new HashMap();
map.put("sgh", sumH);
map.put("tzh", sumW);
return map;
}
public Map<String, Integer> getAvg(Map<String, Integer> map) {
int sumH = map.get("sgh");
int sumW = map.get("tzh");
int avgH = sumH / 3;
int avgW = sumW / 3;
Map<String, Integer> avgMap = new HashMap<>();
avgMap.put("pjsg", avgH);
avgMap.put("pjtz", avgW);
return avgMap;
}
public String getResult(Map<String, Integer> avgM) {
int avgH = avgM.get("pjsg");
int avgW = avgM.get("pjtz");
if (avgH > 150 && avgW < 100) {
return "是美女";
} else {
return "不是美女";
}
}
public static void main(String[] args) {
/* a.从浙江工贸选10个美女
null 2019/9/10 16:51:19
b.计算10个美女的身高和 和 体重和
null 2019/9/10 16:51:38
b 计算10美女的平均身高和平均体重
null 2019/9/10 16:52:29
d 判断这批美女是否合格 平均身高》150 平均体重《200*/
Test4 test4 = new Test4();
List<BL> bls= test4.getBLs();
/*List<Integer> hights = sgtz.get("sg");
List<Integer> wights = sgtz.get("tz");*/
Map<String, Integer> map = test4.getSumHAndSumW(bls);
Map<String, Integer> avgM = test4.getAvg(map);
String s = test4.getResult(avgM);
System.out.println(s);
}
}
输出结果如下
斗地主发牌和洗牌
package com.zhongruan;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.TreeSet;
public class Test6 {
public static void main(String[] args) {
//① 买一副扑克,其实就是自己创建一个集合对象,将扑克牌存储进去
String[] num = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
String[] color = {"红桃","黑桃","方片","梅花"};
HashMap<Integer, String> hm = new HashMap<>(); //存储所以和扑克牌
ArrayList<Integer> list = new ArrayList<>(); //存储索引
int index = 0;
//拼接扑克牌并索引和扑克牌存储在hm中
for (String s1 : num) { //获取数字
for(String s2 : color){ //获取颜色
hm.put(index, s2.concat(s1));
list.add(index); //将索引0到51添加到list集合中
index++;
}
}
//将小王添加到双列集合中
hm.put(index, "小王");
list.add(index); //将52索引添加到集合中
index++;
hm.put(index, "大王"); //将53索引添加到集合中
list.add(index);
//② 洗牌
Collections.shuffle(list);
//③ 发牌
TreeSet<Integer> me = new TreeSet<>();
TreeSet<Integer> dipai = new TreeSet<>();
for (int i = 0; i < list.size(); i++) {
if(i >= list.size() - 3){
dipai.add(list.get(i)); //将三张底牌存储在底牌集合中
}
else{
me.add(list.get(i));
}
}
//④ 看牌
lookPoker(hm,me,"我");
//我的牌是:红桃A 黑桃A 方片2 梅花2 红桃3 方片4 方片7 方片8 梅花8 方片9 梅花9 方片10 黑桃J 红桃Q 方片Q 黑桃K 小王
lookPoker(hm,dipai,"底牌");
//底牌的牌是:黑桃2 黑桃9 红桃10
}
public static void lookPoker(HashMap<Integer,String> hm, TreeSet<Integer> ts, String name){
System.out.print(name + "的牌是:");
for(Integer i : ts){ //i代表双列集合中的每一个键
System.out.print(hm.get(i) + " ");
}
System.out.println();
}
}
输出结果如下