美女选妃修改版与斗地主两个程序

2023-11-21 17:18

本文主要是介绍美女选妃修改版与斗地主两个程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我们把上次写的代码改编一下,上次写的代码没有让我们自己手动输入身高体重,我们今天就自己设置一下自己来输入身高体重,我们把上次在test4中的代码修改成这个样子:
package com.didi;(#说明:com.didi是我创建的包)

import java.util.*;

public class Test2 {
public List getBLs() {
List 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 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) {

Test2 test2 = new Test2();
List bls= test2.getBLs();

Map<String, Integer> map = test2.getSumHAndSumW(bls);
Map<String, Integer> avgM = test2.getAvg(map);
String s = test2.getResult(avgM);
System.out.println(s);

}
}

然后再创建一个java class,我创建了一个名字为BL的java class,BL的代码如下:
package com.didi;

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;
}
}
接下来我们run一下,看看结果是如何的
在这里插入图片描述
这样子就对了。

接下来是模拟斗地主小程序,首先我们看一下要求。
a.拿一副牌
b.打乱拍
c.留3张底牌
d.发牌

代码如下:
package com.didi;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
//准备一副牌

public class DouDiZhu1 {
public static void main(String[] args) {
List poker=new ArrayList<>();
String[] nums={“A”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”,“J”,“Q”,“K”};
String[] colors={“黑桃”,“红桃”,“梅花”,“方块”};

for (String color:colors){
for (String num:nums){
String pai=color+num;
poker.add(pai);
}
}
poker.add(“大王”);
poker.add(“小王”);
System.out.println(poker);

//打乱顺序
Collections.shuffle(poker);
System.out.println(poker);

//留三张底牌
List dipai=new ArrayList<>();
Random random=new Random();
for (int i=0;i<3;i++){
int index=random.nextInt(poker.size());
String pai=poker.remove(index);
dipai.add(pai);
}
System.out.println(dipai);
System.out.println(poker);

//发牌
List wyb=new ArrayList<>();
List xz=new ArrayList<>();
List yyk=new ArrayList<>();
for (int i=0;i<poker.size();i++){
String pai=poker.get(i);
int mod=i%3;
if(mod0){
wyb.add(pai);
}else if(mod
1){
xz.add(pai);
}else {
yyk.add(pai);
}
}
//看牌
System.out.println(wyb);
System.out.println(xz);
System.out.println(yyk);

}

}

运行结果如下:
在这里插入图片描述
这是没有排序过的,下次我们再讲排序过的吧.

这篇关于美女选妃修改版与斗地主两个程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/403836

相关文章

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo

uniapp小程序中实现无缝衔接滚动效果代码示例

《uniapp小程序中实现无缝衔接滚动效果代码示例》:本文主要介绍uniapp小程序中实现无缝衔接滚动效果的相关资料,该方法可以实现滚动内容中字的不同的颜色更改,并且可以根据需要进行艺术化更改和自... 组件滚动通知只能实现简单的滚动效果,不能实现滚动内容中的字进行不同颜色的更改,下面实现一个无缝衔接的滚动

Java使用WebView实现桌面程序的技术指南

《Java使用WebView实现桌面程序的技术指南》在现代软件开发中,许多应用需要在桌面程序中嵌入Web页面,例如,你可能需要在Java桌面应用中嵌入一部分Web前端,或者加载一个HTML5界面以增强... 目录1、简述2、WebView 特点3、搭建 WebView 示例3.1 添加 JavaFX 依赖3

防止SpringBoot程序崩溃的几种方式汇总

《防止SpringBoot程序崩溃的几种方式汇总》本文总结了8种防止SpringBoot程序崩溃的方法,包括全局异常处理、try-catch、断路器、资源限制、监控、优雅停机、健康检查和数据库连接池配... 目录1. 全局异常处理2. 使用 try-catch 捕获异常3. 使用断路器4. 设置最大内存和线

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.