【发布时间】:2015-10-29 17:15:39
【问题描述】:
我正在开发一个非常简单的程序来从单词中拆分字符并要求用户输入字符。如果用户输入的字符与字符数组匹配,则显示“YES”,否则显示“NO”。我使用 .ToCharArray 方法和循环将每个字符从单词中拆分出来并将其分配给字符数组。然后我使用带有 IF 语句的 for 循环来检查条件并显示结果。但它只匹配字符数组中的一个字符而忽略其他字符。
public class test {
public static void main(String[] args) {
// Declaring variables
String[] wordsList= {"java"};
char[] wChar = wordsList[0].toCharArray();
char wCharLetter = 0;
char inputChar;
Scanner input = new Scanner (System.in);
for (int i = 0; i < wordsList[0].length(); i++){
wCharLetter = wChar[i];
}
for (int i = 0; i < wordsList[0].length(); i++){
inputChar = input.next().charAt(0);
if (inputChar==wCharLetter){
System.out.println("YES");
}
else{
System.out.println("NO");
}
}
} }
据我了解;从技术上讲,wCharLetter 变量应该存储所有字符,当我打印 wCharLetter 但在匹配时不起作用。
【问题讨论】:
-
wCharLetter变量只存储最后一个字符,因为每次赋值都会覆盖之前的值。 -
你认为一个字母和多个字母有什么区别?
标签: java arrays string if-statement for-loop