华恩JAVA班第36天

2024-06-13 10:58
文章标签 java 36 华恩

本文主要是介绍华恩JAVA班第36天,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

华恩JAVA班第36天

 

猜拳游戏:

package com.zjj;

import java.util.Scanner;
 *文件名称:Person.java
 *功能说明:
 *开发人员:Ziu Ginzeon
 *创建时间:2013年8月2日 下午3:18:48

public class Person {
 private String name;
 private int score;

 public Person(String name, int score) {
  this.name = name;
  this.score = score;
 }
 
 public int showFist(){
  Scanner in = new Scanner(System.in);
  int a= in.nextInt();
  if(a == 1){
   System.out.println("你出拳:剪刀");
  }else if(a == 2){
   System.out.println("你出拳:石头");
  }else if(a == 3){
   System.out.println("你出拳:布");
  }else{
   System.out.println("输入错误!");
  }
  return a;
 }
 
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public int getScore() {
  return score;
 }
 public void setScore(int score) {
  this.score = score;
 }
}

package com.zjj;

 *文件名称:Computer.java
 *功能说明:
 *开发人员:Ziu Ginzeon
 *创建时间:2013年8月2日 下午3:39:54
 
public class Computer {
 private String name;
 private int score;

 public Computer(String name, int score) {
  super();
  this.name = name;
  this.score = score;
 }
 
 public int cptShowFist(){
  int b = (int)(Math.random()*3);
  if(b == 1){
   System.out.println(getName()+"出拳:剪刀");
  }else if(b == 2){
   System.out.println(getName()+"出拳:石头");
  }else if(b == 3){
   System.out.println(getName()+"出拳:布");
  }
  return b;
 }

 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }

 public int getScore() {
  return score;
 }

 public void setScore(int score) {
  this.score = score;
 }
}

 

package com.zjj;

import java.util.Scanner;

 *文件名称:Game.java
 *功能说明:
 *开发人员:Ziu Ginzeon
 *创建时间:2013年8月2日 下午3:19:19
 
public class Game {
 public static void main(String[] args){
  int n = 0;
  int pScore = 0;
  int cScore = 0;
  Scanner in = new Scanner(System.in);
  String comName = null;
  System.out.println("*************************");
  System.out.println("**********猜拳,开始*********");
  System.out.println("*************************");
  System.out.println("出拳规则:1.剪刀 2.石头 3.布");
  System.out.println("请选择对方的角色:1.刘备2.孙权3.曹操");
  int t = in.nextInt();
  if(t == 1){
   comName = "刘备";
  }else if(t == 2){
   comName = "孙权";
  }else if(t == 3){
   comName = "曹操";
  }else{
   System.out.println("输入错误");
  }
  Computer computer = new Computer(comName,0);
  System.out.println("请输入你的姓名:");
  String name = in.next();
  System.out.println(name+"VS"+comName+"  对战");
  while(true){
   Person person = new Person(name,0);
   System.out.println("请出拳:1.剪刀 2.石头 3.布");
   int w = person.showFist() - computer.cptShowFist();
   if(w == 0){
    System.out.println("平局");
   }else if(w == 1||w == -2){
    System.out.println("赢");
    person.setScore(pScore++);
   }else{
    System.out.println("输");
    computer.setScore(cScore++);
   }
   System.out.println("是否继续(y/n)");
   String c = in.next();
   if(c.equals("n")){
    n++;
    break;
   }else{
    n++;
   }
  }
  System.out.println("对决次数:"+n);
  System.out.println("姓名"+"\t得分"+"\n"+name+"\t"+pScore+"\n"+comName+"\t"+cScore);
  System.out.println("呵呵,继续努力");
 }
}

更多信息可以参见同学富晓磊的博客:http://blog.sina.com.cn/u/1798827371

这篇关于华恩JAVA班第36天的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Spring Cloud LoadBalancer 负载均衡详解

《SpringCloudLoadBalancer负载均衡详解》本文介绍了如何在SpringCloud中使用SpringCloudLoadBalancer实现客户端负载均衡,并详细讲解了轮询策略和... 目录1. 在 idea 上运行多个服务2. 问题引入3. 负载均衡4. Spring Cloud Load

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

在 Spring Boot 中使用 @Autowired和 @Bean注解的示例详解

《在SpringBoot中使用@Autowired和@Bean注解的示例详解》本文通过一个示例演示了如何在SpringBoot中使用@Autowired和@Bean注解进行依赖注入和Bean... 目录在 Spring Boot 中使用 @Autowired 和 @Bean 注解示例背景1. 定义 Stud

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

springboot将lib和jar分离的操作方法

《springboot将lib和jar分离的操作方法》本文介绍了如何通过优化pom.xml配置来减小SpringBoot项目的jar包大小,主要通过使用spring-boot-maven-plugin... 遇到一个问题,就是每次maven package或者maven install后target中的ja

Java中八大包装类举例详解(通俗易懂)

《Java中八大包装类举例详解(通俗易懂)》:本文主要介绍Java中的包装类,包括它们的作用、特点、用途以及如何进行装箱和拆箱,包装类还提供了许多实用方法,如转换、获取基本类型值、比较和类型检测,... 目录一、包装类(Wrapper Class)1、简要介绍2、包装类特点3、包装类用途二、装箱和拆箱1、装

如何利用Java获取当天的开始和结束时间

《如何利用Java获取当天的开始和结束时间》:本文主要介绍如何使用Java8的LocalDate和LocalDateTime类获取指定日期的开始和结束时间,展示了如何通过这些类进行日期和时间的处... 目录前言1. Java日期时间API概述2. 获取当天的开始和结束时间代码解析运行结果3. 总结前言在J

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动