java学习之猜数字小游戏

今天主要学习了一些初级的设计,完成了这个猜数字的小游戏,其是也算不上是什么游戏,因为我答案都给出来了。当然也是想对代码更加熟练的操作,让自己能够得心应手。

这个小程序中让我花了点时间的主要是那个如何去重的问题,当时也是思考良久,后来才考虑到使用死循环让随机数产生直到不重复为止,其他感觉也还好。

import java.util.Scanner;

public class GuessingGames {
 public static void main(String[] args) {
 Scanner in=new Scanner(System.in);
 char[] chs=generate();
 System.out.println(chs);
 int score=500;
 while(true) {
  System.out.println("请猜猜看!");
  String str=in.next();
  char[] input=str.toCharArray(); //将用户输入的字符串转换为数组
  int[] result=compare(chs, input);
  if (result[1]==chs.length) {
  System.out.println("恭喜你,猜对了!!!你获得的分数为"+score+"猜错次数为:"+(500-score)/10);
  break;
  }else {
  System.out.println("字符猜对个数为:"+result[0]+","+"位置猜对为:"+result[1]);
  score-=10;
  }
 }
 }

 // 随机生成字母
 public static char[] generate() {
 char[] letters = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
  'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
 char[] chs = new char[5];
 char copy;
 for (int i = 0; i < chs.length; i++) {
  chs[i] = letters[(int) (Math.random() * 26)];
  copy=letters[(int) (Math.random()*26)];
  for (int j = 0; j < i; j++) {
  if (chs[i]==chs[j]) {
   for(;;) {
   copy=letters[(int) (Math.random()*26)];
   if (chs[i]!=copy) {
   chs[i]=copy;
   break;
   }
   }
  }
  }
 }
 return chs;
 }

 //完成两个数组的对比
 public static int[] compare(char[] chs,char[] input) {
 int[] score=new int[2];
 for (int i = 0; i < input.length; i++) {
  for (int j = 0; j < chs.length; j++) {
  if (input[i]==chs[j]) {
   score[0]++;
   if (i==j) {
   score[1]++;
   }
   break;
  }
  }
 }
 return score;
 }
}

小编再为大家分享一段代码:Java控制台猜数字小游戏:

import java.util.*;
/**
 *控制台猜数字小游戏,系统自动生成范围为1-100的数字
 *@version 1.0 2018-01-04
 *@author jie1024(wechat:wxxueba)
 */
public class GuessX{
 public static void main(String[] args){
 Random random = new Random();//创建random
 int x = random.nextInt(100)+1;//生成一个1-100之间的随机数 random.nextInt(100)的范围为0-99,所以+1,范围为1-100
 System.out.println("系统已自动为您生成了一个随机数(范围为1-100),游戏开始!");
 System.out.print("猜猜这个数字是多少吧:");
 Scanner in = new Scanner(System.in);//创建scanner
 int y = in.nextInt(); //输入数字
 int count = 1; //次数

 while(y != x){

  count ++;

  if(y<1 || y>100){
  System.out.print("Sorry,你猜的数字不在范围之内(范围为1-100),请再重新猜一次吧:");
  y = in.nextInt();
  }

  else if (y>x){
  System.out.print("Sorry,你输入的数字太大了,请再重新猜一次吧:");
  y = in.nextInt();

  }
  else if (y<x){
  System.out.print("Sorry,你输入的数字太小了,请再重新猜一次吧:");
  y = in.nextInt();
  }
 }
 System.out.println("恭喜你,猜对了!你猜的数字是" + y + "你总共猜了" + count + "次!");
 }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2019-06-29

java猜数字小游戏案例

本文实例为大家分享了java猜数字小游戏案例,供大家参考,具体内容如下 package day08; import java.util.Scanner; public class GuessNumber { /** * 猜数字小游戏:. 需求: 随机产生一个整数数1-100(被猜数)不设置输出 * 键盘录入一个玩家要猜的数字 * 判断猜大还是猜小了或者猜中 */ public static void main(String[] args) { // 随机产生整数1-100 int number

java版简单的猜数字游戏实例代码

游戏简述 游戏涉及到game和player两个对象,game会产生介于0-9之间的随机数,下面看看详细的实现过程. 程序逻辑: 1.GameLauncher这个类带有main()方法,是应用程序的入口点 2.main()中会创建出GuessGame对象,并调用她的startGame()方法 3.startGame()方法是游戏的起点,它会创建3个player,然后挑出猜测的随即数字,它会要求player猜测并检查结果,过程会被列出来 类: •GameLauncher.class •GuessGa

java实现猜数字小游戏

java 实现猜数字游戏 随机给定一个数字,猜大小直到正确 package com.swift; import java.util.Random; import java.util.Scanner; public class GuessBigSmall { public static void main(String[] args) { Scanner scan=new Scanner(System.in); Random random = new Random(); int number =

Java编写猜数字小游戏

本文实例讲述了java实现的简单猜数字游戏代码.分享给大家供大家参考. 以下是Java语言写的一个猜数字小游戏引用片段: import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; //主函数 public class calssOne { public static void main(String[] args) { //shit+Ctrl+o int result; //随机产生一个

java实现的简单猜数字游戏代码

本文实例讲述了java实现的简单猜数字游戏代码.分享给大家供大家参考. 具体代码如下: 复制代码 代码如下: import java.util.InputMismatchException; import java.util.Scanner; public class Main {         public static void main(String[] args) {                 // 产生一个随机数                 int number = (in

Java实现的猜数字游戏示例

本文实例讲述了Java实现的猜数字游戏.分享给大家供大家参考,具体如下: 这里演示一段java语言猜数字代码,流程如下: 系统随机生成0-9中的不重复四位数字. 然后用户输入四个数字 如果数字对了,位置不对 则显示 nB,n是有几个是位置对的. 如果数字对了,位置也是对的 则显示mA,m代表有几个数字是正确位置上的. 例如:  生成的是0369    用户输入的是0396 则显示2A2B,两个位置是正确并且数字正确的,另外两个是数字正确,位置不正确的. Java代码: package com.e

Go Java算法猜数字游戏示例详解

目录 猜数字游戏 方法一:遍历(Java) 方法一:遍历(Go) 猜数字游戏 你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下: 写出一个秘密数字,并请朋友猜这个数字是多少.朋友每猜测一次,你就会给他一个包含下述信息的提示: 猜测数字中有多少位属于数字和确切位置都猜对了(称为 "Bulls",公牛), 有多少位属于数字猜对了但是位置不对(称为 "Cows",奶牛).也就是说,这次猜测中有多少位非公牛数字可以通过重新排列转换成公牛数字. 给

java实现简单猜数字游戏

本文实例为大家分享了java实现猜数字游戏的具体代码,供大家参考,具体内容如下 1.游戏分析: 游戏第一步:需要一个随机数,并且该随机数有范围:(java的包中有一个Random类可产生随机数,需要导入这个包,如下) 游戏第二步:猜数字的设计,猜的次数为5次 2.编程实现: import java.util.Random; import java.util.Scanner; public class Guess_num { public static void main(String[] arg

java语言实现猜数字游戏

本文实例为大家分享了java实现猜数字游戏的具体代码,供大家参考,具体内容如下 随机生成0~100的数字,通过控制台输入猜测数字,输出进行提示,知道猜测正确后,结束本次猜数字游戏,从而决定是否需要重新玩 代码如下: import java.util.Random; import java.util.Scanner; public class GuessNumber1{ public static Scanner scanner = new Scanner(System.in);//输入 publ

java使用JOptionPane猜数字游戏

本文实例为大家分享了java实现猜数字游戏的具体代码,供大家参考,具体内容如下 一.我猜数字 import java.util.Random; import javax.swing.JOptionPane; public class MyRandom { public static void main(String[] args) { //生成随机数 Random randomNumber = new Random(); int myNum = randomNumber.nextInt(10);

Java简单实现猜数字游戏附C语言版本

目录 前言 一.C语言版本 代码 运行结果 二.Java版本 代码 运行结果 总结 前言 以前在学C语言的时候,做过一个猜数字游戏,这两天学了Java的逻辑结构,试着用Java实现下. 一.C语言版本 以前做的C语言版本. 代码 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> void menu() { printf("******

python3.3使用tkinter开发猜数字游戏示例

利用这个小游戏可以学习一下ython3.3中tkinter的使用方法 复制代码 代码如下: # -*- coding: utf-8 -*-import tkinter as tkimport sysimport randomimport re number = random.randint(0,1024)running = Truenum = 0nmaxn = 1024nminn = 0 def eBtnClose(event):    root.destroy() def eBtnGuess(

Java Socket实现猜数字小游戏

本文实例为大家分享了Java Socket实现猜数字游戏的具体代码,供大家参考,具体内容如下 运行截图 Server Client 完整代码 Server import java.io.IOException; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Random; import java.util.Scanner; public clas

Java的带GUI界面猜数字游戏的实现示例

先导包 import java.util.*; import javax.swing.*; 再写主方法 public static void main(String[] args) { } 新声明一个Scanner和随机数 public static void main(String[] args) { Scanner in = new Scanner(System.in); Random r = new Random(); } 让UIManager爬取系统窗口样式 try { UIManage

Java实现英文猜词游戏的示例代码

目录 前言 主要设计 功能截图 代码实现 游戏启动类 处理 单词判断 总结 前言 <英文猜词游戏>代码行数没有超过200行,是之前为了背英语单词,特意研发的小游戏. 主要设计 1.事先准备单词文本. 2.为了让玩家能与程序互动,使用下面这个命令可达效果 Scanner sc = new Scanner(System.in); 3.运行WordleMaster里的main方法 4.在Wordle中输入第一个单词(默认第一个单词是abort,会显示在console中.可在代码中修改) 5.将Wor