欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

教你如何用List进行学生信息传递

程序员文章站 2022-05-11 17:42:28
...
集合在程序开发中经常用到,例如,在业务方法中将学生信息、商品信息等存储到集合中,然后作为方法的返回值返回给调用者,以此传递大量的有序数据。

本实例将使用List集合在方法之间传递学生的信息。实例效果如下:

教你如何用List进行学生信息传递教你如何用List进行学生信息传递

设计过程

1)在项目中新建窗体类ClassInfo。 在窗体中添加JScrollPane,再在JScrollPane中放置表格控件JTable。

2)编写getTable()方法。在该方法中创建表格对象并设置表格的数据模型,然后调用getStudents()方法获取学生信息的集合对象,

在遍历该集合对象的同时,把每个元素添加到表格模型的行,并显示到表格控件中。

 1 private JTable getTable() {  
 2       if (table == null) {  
 3           table = new JTable();// 创建表格控件   4           table.setRowHeight(23);// 设置行高度   5           String[] columns = { "姓名", "性别", "出生日期" };// 创建列名数组  
 6           // 创建表格模型   7           DefaultTableModel model = new DefaultTableModel(columns, 0);  
 8           table.setModel(model);// 设置表格模型   9           List<String> students = getStudents();// 调用方法传递list集合对象  10           for (String info : students) {// 遍历学生集合对象  11               String[] args = info.split(",");// 把学生信息拆分为数组  12               model.addRow(args);// 把学生信息添加到表格的行  13           }  
14       }  
15       return table;  
16   }

3)编写getStudents()方法,该方法将向调用者传递List集合对象,并为集合对象添加多个元素,每个元素值都是一个学生信息,其中包括姓名、性别、出生日期。

 1 private List<String> getStudents(){  
 2         //创建List集合对象   3         List<String> list = new ArrayList<String>();  
 4         list.add("钱东强,男,1990-1-4");//字符串之间用英文的逗号隔开   5         list.add("孙西,女,1990-1-4");  
 6         list.add("周五燕,男,1990-1-4");  
 7         list.add("王东,女,1990-1-4");  
 8         list.add("冯晓,男,1990-1-4");  
 9         list.add("陈玉山,女,1990-1-4");  
10         list.add("蒋钦大,男,1990-1-4");  
11         return list;  
12           13     }

完整代码

 1 package cn.str.opera;  
 2    3 import java.awt.BorderLayout;  
 4    5 public class ClassInfo extends JFrame {  
 6    7     private JPanel contentPane;  
 8     private JTable table;  
 9   10     /** 11      * Launch the application. 
12      */  13     public static void main(String[] args) {  
14           15            try {  
16                 UIManager  
17                         .setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");  
18             } catch (Throwable e) {  
19                 e.printStackTrace();  
20             }  
21         EventQueue.invokeLater(new Runnable() {  
22             public void run() {  
23                 try {  
24                     ClassInfo frame = new ClassInfo();  
25                     frame.setVisible(true);  
26                 } catch (Exception e) {  
27                     e.printStackTrace();  
28                 }  
29             }  
30         });  
31     }  
32   33     /** 34      * Create the frame. 
35      */  36     public ClassInfo() {  
37         getContentPane().setLayout(new BorderLayout(0, 0));  
38         setTitle("\u7528List\u96C6\u5408\u4F20\u9012\u5B66\u751F\u4FE1\u606F");  
39         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
40         setBounds(100, 100, 450, 300);  
41         contentPane = new JPanel();  
42         contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));  
43         contentPane.setLayout(new BorderLayout(0, 0));  
44         setContentPane(contentPane);  
45           46           47         JScrollPane scrollPane = new JScrollPane();  
48         contentPane.add(scrollPane,BorderLayout.CENTER);  
49         scrollPane.setViewportView(getTable());  
50           51     }  
52   53     private JTable getTable() {  
54         if(table == null){  
55             table = new JTable();//创建表格控件  56             table.setRowHeight(23);  
57             String[] columns = {"姓名","性别","出生日期"};//创建列名数组  
58             //创建表格模型  59             DefaultTableModel model = new DefaultTableModel(columns,0);  
60             table.setModel(model);//设置表格模型  61             List<String> students = getStudents();  
62             for(String info:students){// 遍历学生集合对象  63                 String[] args = info.split(",");// 按英文逗号,把学生信息拆分为数组  64                 model.addRow(args);  
65             }     
66               67         }         
68         return table;         
69     }  
70       71     private List<String> getStudents(){  
72         //创建List集合对象  73         List<String> list = new ArrayList<String>();  
74         list.add("钱东强,男,1990-1-4");//字符串之间用英文的逗号隔开  75         list.add("孙西,女,1990-1-4");  
76         list.add("周五燕,男,1990-1-4");  
77         list.add("王东,女,1990-1-4");  
78         list.add("冯晓,男,1990-1-4");  
79         list.add("陈玉山,女,1990-1-4");  
80         list.add("蒋钦大,男,1990-1-4");  
81         return list;  
82           83     }     
84   85 }

以上就是教你如何用List进行学生信息传递的详细内容,更多请关注其它相关文章!