【发布时间】:2018-05-13 04:46:16
【问题描述】:
这是我正在搞乱的代码的一部分:
import java.util.Scanner;
public class Hwk12 {
public static void main(String args[])
{
final int ARRAY_SIZE = 100;
int numberElements = 0;
char[] array = new char[ARRAY_SIZE];
getInfo(array, numberElements);
System.out.println(array);
System.out.println("1");
System.out.println(numberElements);
System.out.println(array.length);
}
public static void getInfo(char[] letters, int numberElements)
{
Scanner keyboard = new Scanner(System.in);
System.out.print("Please enter some letters or -1 to quit: ");
String input = keyboard.nextLine();
char characterInput = input.charAt(0);
while(!input.equals("-1") && numberElements < letters.length)
{
letters[numberElements] = characterInput;
numberElements++;
System.out.print("Please enter some letters or -1 to quit: ");
input = keyboard.nextLine();
characterInput = input.charAt(0);
}
当我运行它并输入内容时,这是输出:
请输入一些字母或-1退出:a
请输入一些字母或-1退出:s
请输入一些字母或-1退出:d
请输入一些字母或-1退出:f
请输入一些字母或-1退出:s
请输入一些字母或-1退出:a
请输入一些字母或-1退出:d
请输入一些字母或-1退出:f
请输入一些字母或-1退出:a
请输入一些字母或-1退出:s
请输入一些字母或-1退出:df
请输入一些字母或-1退出:d
请输入一些字母或-1退出:-1
asdfsadfasdd
1
0
100
为什么当我在getInfo() 方法的while 循环期间通过递增明确更改它时,它显示numberElements 为0?
【问题讨论】:
标签: java loops methods printing