[多項選擇題] 簡單應(yīng)用題請完成下列Java程序:用swing實現(xiàn)一個簡單的學(xué)生成績管理器,顯示出學(xué)生的姓名,java成績,c++成績和這兩門課的平均成績,學(xué)生
[多項選擇題] 簡單應(yīng)用題請完成下列Java程序:用swing實現(xiàn)一個簡單的學(xué)生成績管理器,顯示出學(xué)生的姓名,java成績,c++成績和這兩門課的平均成績,學(xué)生一共有4個人(Mike, Jack等)。要求可以修改學(xué)生的姓名和成績,并且能夠直接計算出平均成績,如改變Mike的java成績后,在平均成績欄會自動更新為新的平均成績。注意:請勿改動main( )主方法和其他已有語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。程序運行結(jié)果如下:import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import javax.swing.table.TableModel;public class ex13_2 extends JFrame{ private JTable jt; private String[][] strData; public static void main(String[] args){ ex13_2 obj13_2=new ex13_2(); obj13_2.pack(); obj13_2.setVisible(true); } public ex13_2(){ String[] columnNames={"name","java","c++","average"}; strData=new String[][]{{"Mike","70.0","80.0","75.0"},{"Jack","70.0","100.0","85.0"},{"David","75.0","95.0","85.0"},{"Tom"
正確答案:(String)jt.getValueAt(nRow,i)strData[nRow][C]=Float.toString(fAverage)
參考解析:本題主要考查用swing基本構(gòu)件設(shè)計圖形用戶界面,以及對二維數(shù)組的基本操作。解題關(guān)鍵是熟悉swing基本構(gòu)件JTable的使用方法,熟悉swing的基本事件機制,會使用addTableModelListener()來注冊該模型的一個TableModelListener,一旦表格內(nèi)容改變,tableChanged()方法會被執(zhí)行,使用getFirstRow()方法來得到數(shù)據(jù)被改變的行并重新計算平均值,由于數(shù)組數(shù)據(jù)是用來存儲表格的數(shù)據(jù),可以直接更改該數(shù)組的值。本題中,第1個空,根據(jù)參數(shù)nRow和i定位相應(yīng)的數(shù)組中的數(shù)據(jù);第2個空,修改數(shù)組中記錄平均值的單元中的數(shù)據(jù)。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。