【发布时间】:2016-03-17 20:08:23
【问题描述】:
我正在创建一个 java 程序,并坚持在数组中搜索字符的概念。
代码用于创建一个刽子手游戏,其中一部分将显示部分完成的刽子手、一个字母表和一组空格(“_”),以表示需要猜测的单词的长度。每次猜后,我需要从字母表中取出猜出的字母(这是我现在正在做的部分),如果猜对了,用那个字母替换单词中的空白,或者如果它是错误的猜猜,完成另一个刽子手。
我之前只创建了代码来搜索数组中的数字,而不是字符。我一直在浏览我的书和互联网,但找不到解决方案。
没有人知道这样做的方法或我可以在哪里找到方法吗?
抱歉,我已经发布了一个关于此作业的问题,但几天后就要到期了,我正在苦苦挣扎。
到目前为止,这是我的代码(我正在努力解决的部分位于最底部):
public static void main(String[] args)
{
String[] words =
{
"javascript", "declaration", "object", "program", "failing"
};
//generate random word from list
Random rnd = new Random();
String rndWord = words[rnd.nextInt(words.length)];
//gets length of generated word
char[] displayArray = new char[rndWord.length()];
//displays "_" for number of chars in word
for (int i = 0; i < rndWord.length(); i++)
{
displayArray[i] = '_';
}
char[] alphabet =
{
'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'
};
String hangman
= "Let's Play Hangman!!" + "\n"
+ "-------------" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "|" + "\n"
+ "\n" + Arrays.toString(displayArray) + "\n"
+ " ";
JOptionPane.showMessageDialog(null, hangman + " "
+ Arrays.toString(alphabet) + " ");
}
//get letter
public static char guess()
{
String guessStr = JOptionPane.showInputDialog("Enter a letter to guess: ");
// check if have at least one letter
if (guessStr.length() > 0)
{
}
char guessChar = guessStr.charAt(0);
return guessChar;
}
//remove guess from alphabet
private char[] getCharArray(char[] array)
{
//this is the part I'm not sure about
}
【问题讨论】:
-
I've only created code to search for numbers in arrays before, not chars.真的没有区别。 -
new String(yourCharArray).contains("" + yourChar) -
对于这种类型的代码,也许您应该使用
List而不是数组。它使您可以轻松删除条目并进行搜索。 -
为什么不使用
String.replace(char, ""');?