如何将char添加到数组中?

时间:2018-05-08 14:15:21

标签: java arrays char

我有一个基于字符数组的问题。目前我有一个input变量,它带有单词的第一个字母。

char input = scanner.nextLine().charAt(0);

我想要做的是每次输入,我想把它放在一个数组中,这样我就可以记录所有已经检索过的字母。我假设这是使用char []但我在实现将每个输入添加到数组时遇到了问题。

1 个答案:

答案 0 :(得分:3)

char input = scanner.nextLine().charAt(0);

首先不清楚的是对象类型是扫描仪? 但是现在我假设scanner是Java.util.Scanner的扫描程序对象

如果是这样的话,scanner .nextLine()实际上返回一个String。 String有一个charAt()方法,允许你在字符串中的任何地方挑选一个字符。

但是scanner.nextLine()获取整个行,而不仅仅是一个单词。所以真的scanner.nextLine().charAt(0)正在获得该行中的第一个字符。

scanner.next()会在该行中显示 next 字样。 如果该行包含" Hello World" scanner.next().charAt(0)会返回字符' H'。 然后,scanner.next().charAt(0)的下一个电话会返回字符' W'

public static void main(String[] args) {
    boolean finished = false;
    ArrayList<Character> firstLetters = new ArrayList<>();
    Scanner scanner = new Scanner(System.in);
    while (!finished) {
        firstLetters.add(scanner.next().charAt(0));
    }
}

上面的代码示例可能会为您提供您正在寻找的行为。 请注意,while循环将一直运行,直到finished变为真。 您的程序必须决定何时将finished设置为true。

这里有几个关于Java扫描器类的链接