所以我几周前刚刚开始学习Java并且遇到了一个程序练习,我必须基本上要求用户输入一个单词,然后输入4个数字,尽管这些数字不能大于单词长度。
现在问题,我的代码可能看起来很糟糕并且没有意义,如果是这样,请告诉我有什么问题,因为到目前为止我知之甚少,但有人可以告诉我如何使用单个扫描仪读取4个数字并使用charAt返回与该数字对应的字母?
我感谢任何建议。
这就是我所拥有的,只输出1个字母。
import java.util.Scanner;
public class StringFun {
public static void main(String[]args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter a word: ");
String userWord = input.next(); //Use next to read only one word
int length = userWord.length();
System.out.print("Enter four indices: ");
int userNumbers = input.nextInt();
if (userNumbers <= length - 1) {
char randomWord = userWord.charAt(userNumbers);
System.out.println(randomWord);
}
else {
System.out.println("All indices must be less than your word.");
}
}
}
答案 0 :(得分:0)
在System.out.print("Enter four indices: ");
之后,您可以尝试以下内容:
int correct = 0;
while(correct < 4) {
int userNumbers = input.nextInt();
if (userNumbers < length) {
char randomWord = userWord.charAt(userNumbers);
System.out.println(randomWord);
correct++;
} else {
System.out.println("All indices must be less than your word.");
}
}