首頁  >  文章  >  Java  >  教你如何用List進行學生資訊傳遞

教你如何用List進行學生資訊傳遞

巴扎黑
巴扎黑原創
2017-07-20 10:22:331946瀏覽

       集合在程式開發中常用到,例如,在業務方法中將學生資訊、商品資訊等儲存到集合中,然後作為方法的回傳值回傳給呼叫者,以此傳遞大量有序的資料。

本實例將使用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進行學生資訊傳遞的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn