gpt4 book ai didi

Java,从 JTextFields 填充的二维字符串数组

转载 作者:行者123 更新时间:2023-11-30 07:57:03 25 4
gpt4 key购买 nike

我正在创建一个商业软件并卡在原地,我需要用来自多个 JTextBox 字段的信息填充一个数组。

我创建了一个数组 -

 public String[][] BookAttributes = new String[BookRows][BookLines];

我想保存用户从每本书的 [BookLines] 列中的 JTextFields 添加的信息,每次将新书添加到库存时,这些信息都应该自动递增。

private JTextField tfBookName;
private JTextField tfBookCost;
private JTextField tfBookYearOfPublication;
private JTextField tfBookPublishingHouse;
private JTextField tfBookISBN;
private JTextField tfBookAuthor;
private JTextField tfBookNrOfPages;

不幸的是,我找不到如何将所有这些放在一起的解决方案。

感谢任何帮助。

谢谢!

最佳答案

如果我对您的理解正确,那么您希望将 Book 信息(例如 NameCost 等)保存到一个数组中。

但是,在上面的例子中,您正在创建一个看起来像这样的 2-D String Array:

Location (0,0) of array -> "foo"
Location (0,1) of array -> "bar"
...
...

你真正需要的是一个类,比如Book,它可以保存关于不同属性的信息。如下所示:

public class Book {

private String bookName;
private String bookCost;
private String bookYearOfPublication;
private String bookPublishingHouse;
private String bookISBN;
private String bookAuthor;
private String bookNrOfPages;

/* Constructor, Getter, Setters */
...
}

接下来您可以像这样创建此类的数组:

int bookRows = 100;
Book[] booksInfo = new Book[bookRows];

然后简单地编写一个 for 循环来存储不同的书籍详细信息,如下所示:

for(int i = 0; i < bookRows; i++) {
Book book = new Book();

book.setBookName(tfBookName);
...
...

booksInfo[i] = book;
}

如果你想通过简单地使用 System.out 来打印任何一本书的不同属性,你可以进一步覆盖 Book 类的 toString() 方法.println(...).

这是代码片段:

@Override
public String toString() {
return new StringBuilder().append("BookName: ").append(bookName)
.append(" | Book Cost: ").append(bookCost).toString();
}

关于Java,从 JTextFields 填充的二维字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41600726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com