分配不带特定索引的数组值

Assign array values without specific index

提问人:Falah Kharisma 提问时间:3/30/2023 最后编辑:Mark RotteveelFalah Kharisma 更新时间:3/31/2023 访问量:87

问:

我是一个想尝试 Java 编程的初学者,当我想在不输入特定索引的情况下向数组(之前已实例化)添加值时,我遇到了问题

public void readData() {
    books = new Book[10];

    while (true) {
        book = new Book();
        process = new BookProcess();
        System.out.printf("%nData Application%n");
        System.out.printf("%nApplication menu%n");
        System.out.printf("=============%n");
        System.out.printf("[S] Show Book%n[A] Add books%n[E] Edit book%n[D] Delete book%n[X] Exit%n");
        System.out.printf("%nChoose Menu [S/A/E/D/X]");
        inputData = scanner.nextLine();
        process.setMenu(inputData);

        while (true) {
            if (process.getMenu().equals("A") || process.getMenu().equals("a")) {
                if (true) {
                    System.out.printf("%n%-10s: ", "No. Book");
                    inputData = scanner.nextLine();
                    if (inputData.equals(""))
                        book.setNobook(inputData);
                    break;
                }
            }
        }
    }

之后,我想像这样显示表格中的数据

System.out.printf("%-25s", book.getNobook());

因为我是初学者,所以我对 Java 方法的了解仍然有限,但是我怎样才能在不提及特定索引(随机)的情况下添加值,所以循环后我可以向数组添加另一个值,只要它不超过数组的索引数。我想知道基本方法,而不是前进。book.SetNobook(inputData)book.getNobook()

Java 数组 for-loop while-loop 变量赋值

评论

0赞 Hulk 3/30/2023
如果我理解正确的话,你想像动态列表一样使用你的数组。您需要另一个变量来跟踪上次占用(或第一个空闲)索引,并在添加图书时递增它。这实质上是类 ArrayList 在内部的作用。
1赞 matt 3/30/2023
真的不清楚你在添加什么。也许您可以提供一个会引起混淆的示例输入。数组可能不是正确的数据类型,但我敢打赌你可以使用它。您还可以使用“列表”或“集合”或任意数量的集合。

答: 暂无答案