java - 如何对内容进行分组并将其作为一个对象添加到 ArrayList 中?

标签 java swing oop arraylist

我在 GUI 设计中声明了几个 swing 组件。我已成功将大部分组件转换为字符串格式,如下所示:

String NameOfCruise = Cruisename.getText().trim(); //JTextField
String startLValue = startL.getSelectedItem().toString(); //JComboBox
String endLValue = endL.getSelectedItem().toString();  // JComboBox
new SimpleDateFormat("dd/MM/yyyy").format(model1.getValue())); //JSpinner
String Shipname = ShipList.getSelectedValue().toString(); // JList

上述组件的目的是构建一个表单,允许用户向系统添加新的 Cruise。获取上面所有的表单输入后,我想将其存储到一个ArrayList中。

 ArrayList Cruise = new ArrayList();

但是,我想以这种格式存储它:

Cruise Name: ________
Start Port: _________
End Port: _______
Start Date: _________
End Date: _______
Assigned to ship: ______

因此,如果我可以选择列出系统中的所有游轮,它会将其显示为一个对象。例如,如果我在 ArrayList 中有一个 Cruise,它也会显示分配给它的所有详细信息。

有办法做到这一点吗?

最佳答案

您可能会将数据与其表示形式混淆。我想您将在 ArrayList<Cruise> 中存储 Cruise 对象。 ,所有这些都包含纯数据,包括字符串、日期等,这应该是程序模型的一部分。它的显示方式取决于您的 GUI 或 View 。如果你想显示List<Cruise>按照您提到的格式,您可以在 JList 中执行此操作,并让单元格渲染器返回一个 JPanel,其中的相应字段填充有各个 Cruise 的属性。

关于java - 如何对内容进行分组并将其作为一个对象添加到 ArrayList 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27337929/

相关文章:

java - 需要初始化对象时使用的设计模式?

oop - 我应该指定 setter 吗?

java - Hamcrest ArrayList 匹配器

java - 将不匹配的数据模型从 XML 转换为 JSON 的最佳实践

java - 如何在启动时将 JFrame 定位到屏幕的右上角

java - 在 Java 桌面应用程序中嵌入 fckeditor

java - JLabel 图像不会显示在 JFrame 上

java - 如何在Android操作系统的手机上检索相机拍摄的照片?

java - 如何将指定字符串的大小设置为JTextField?

c++ - 将类属性传递给函数