Java 刽子手游戏寻找复制品
到目前为止,我已经找到了它,找到单个字符,它甚至以大量的猜测结束,并向您显示猜测的单词。但我找不到复制品:(任何想法,伙计们。 这是我的密码Java 刽子手游戏寻找复制品,java,duplicates,duplicate-removal,Java,Duplicates,Duplicate Removal,到目前为止,我已经找到了它,找到单个字符,它甚至以大量的猜测结束,并向您显示猜测的单词。但我找不到复制品:(任何想法,伙计们。 这是我的密码 import java.util.*; public class Hangman { public static void main (String[] args) { String tempGuess; char blank = '_'; int amountOfGuesses = 0; Scanne
import java.util.*;
public class Hangman
{
public static void main (String[] args)
{
String tempGuess;
char blank = '_';
int amountOfGuesses = 0;
Scanner k = new Scanner(System.in);
System.out.print("Please Enter A Word : ");
String guessWord = k.nextLine();
char[] myArray = guessWord.toCharArray();
for (int i = 0; i < guessWord.length(); i++)
{
myArray[i] = blank;
}
System.out.println(myArray);
boolean whilerun = true;
while (whilerun == true)
{
System.out.print("Please Guess A Letter : ");
String guessLetter = k.nextLine();
amountOfGuesses = amountOfGuesses + 1;
int tempLG = guessWord.indexOf(guessLetter);
if (tempLG == -1)
{
System.out.println("Character Not In Word");
}
else
{
myArray[tempLG] = guessWord.charAt(tempLG);
}
System.out.println(myArray);
String tempGW = new String(myArray);
if (tempGW.equalsIgnoreCase(guessWord))
{
whilerun = false;
}
}
System.out.print("Well Done You Guessed The Word In " + amountOfGuesses + " trys.");
}
}
import java.util.*;
公共级刽子手
{
公共静态void main(字符串[]args)
{
猜字符串;
char blank='";
int amountofguesss=0;
扫描仪k=新的扫描仪(System.in);
System.out.print(“请输入一个单词:”);
字符串猜测词=k.nextLine();
char[]myArray=guessWord.toCharArray();
for(int i=0;i
谢谢大家。如果希望代码在重复条目时通知您,请将else语句更改为以下内容
else {
String val = String.valueOf(myArray);
if(val.contains(guessLetter)) {
System.out.println("Char already found");
}
myArray[tempLG] = guessWord.charAt(tempLG);
}
/*
*图-Hangman.java,2013年11月18日下午6:08:55
*
/
导入java.util
/**
*班上的刽子手。
*
*@作者Rajakrishna V.Reddy
*@version 1.0
*
*/
公共级刽子手
{
/**
*主要方法。
*
*@param args
*争论
*/
公共静态void main(字符串[]args)
{
猜字符串;
char blank='";
int amountofguesss=0;
最终映射duplicateCharIndexMap=newHashMap();
扫描仪k=新的扫描仪(System.in);
System.out.print(“请输入一个单词:”);
字符串猜测词=k.nextLine();
char[]myArray=guessWord.toCharArray();
for(int i=0;i
}package com.hangman;
导入java.util.HashMap;
导入java.util.Map;
导入java.util.Scanner;
公共级刽子手
{
/**
*主要方法。
*
*@param args
*争论
*/
公共静态void main(字符串[]args)
{
猜字符串;
char blank='";
int amountofguesss=0;
最终映射duplicateCharIndexMap=newHashMap();
扫描仪k=新的扫描仪(System.in);
System.out.print(“请输入一个单词:”);
字符串猜测词=k.nextLine();
char[]myArray=guessWord.toCharArray();
for(int i=0;i
重复一些已经做出的猜测?你也可以发布整个问题吗?你的意思是,如果一个单词有两个P,而用户的猜测是P,程序将显示两个P而不是一个P?只需将重复的字母存储在地图中,并使用索引进行下一次搜索和替换。
/**
* The main method.
*
* @param args
* the arguments
*/
public static void main(String[] args)
{
String tempGuess;
char blank = '_';
int amountOfGuesses = 0;
final Map<String, Integer> duplicateCharIndexMap = new HashMap<String, Integer>();
Scanner k = new Scanner(System.in);
System.out.print("Please Enter A Word : ");
String guessWord = k.nextLine();
char[] myArray = guessWord.toCharArray();
for (int i = 0; i < guessWord.length(); i++)
{
myArray[i] = blank;
}
System.out.println(myArray);
boolean whilerun = true;
while (whilerun)
{
System.out.print("Please Guess A Letter : ");
String guessLetter = k.nextLine();
amountOfGuesses = amountOfGuesses + 1;
final int tempLG = guessWord.indexOf(guessLetter, duplicateCharIndexMap.get(guessLetter) == null ? 0
: duplicateCharIndexMap.get(guessLetter));
if (tempLG == -1)
{
System.out.println("Character Not In Word");
}
else
{
duplicateCharIndexMap.put(guessLetter, tempLG + 1);
myArray[tempLG] = guessWord.charAt(tempLG);
}
System.out.println(myArray);
String tempGW = new String(myArray);
if (tempGW.equalsIgnoreCase(guessWord))
{
whilerun = false;
}
}
System.out.print("Well Done You Guessed The Word In " + amountOfGuesses + " trys.");
}
package com.hangman;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class Hangman
{
/**
* The main method.
*
* @param args
* the arguments
*/
public static void main(String[] args)
{
String tempGuess;
char blank = '_';
int amountOfGuesses = 0;
final Map<String, Integer> duplicateCharIndexMap = new HashMap<String, Integer>();
Scanner k = new Scanner(System.in);
System.out.print("Please Enter A Word : ");
String guessWord = k.nextLine();
char[] myArray = guessWord.toCharArray();
for (int i = 0; i < guessWord.length(); i++)
{
myArray[i] = blank;
}
System.out.println(myArray);
boolean whilerun = true;
boolean duplicateFlag = false;
while (whilerun)
{
duplicateFlag = true;
System.out.print("Please Guess A Letter : ");
String guessLetter = k.nextLine();
amountOfGuesses = amountOfGuesses + 1;
while (duplicateFlag)
{
final int tempLG = guessWord.indexOf(guessLetter, duplicateCharIndexMap.get(guessLetter) == null ? 0
: duplicateCharIndexMap.get(guessLetter));
if (tempLG == -1)
{
System.out.println("Character Not In Word");
duplicateFlag = false;
}
else
{
duplicateCharIndexMap.put(guessLetter, tempLG + 1);
myArray[tempLG] = guessWord.charAt(tempLG);
}
}
System.out.println(myArray);
String tempGW = new String(myArray);
if (tempGW.equalsIgnoreCase(guessWord))
{
whilerun = false;
}
}
System.out.print("Well Done You Guessed The Word In " + amountOfGuesses + " trys.");
}
}