1 / * 50プログラム[50]ファイルIO
2 タイトル:5人の生徒たちは、それぞれの学生が3コースの結果を持って、上記のデータは、(学生番号、名前、に3つのコースを含む、キーボードから入力された
3 計算のパフォーマンス)、平均スコアは、オリジナルデータと算出された平均スコアは、ディスクファイル「スタッド」に格納されます。
4 * /
5
。6 / * 解析
7 * 1、カスタムクラスの学生、番号、名前、タイトル1つの結果、被験者2つの結果、被験者3つの結果、平均スコアを含む
。8 *パブリッククラスのクラス名{
9 *データ型プロパティ名称1;
10 *データ型、プロパティ名2 ;.
11 * ...
12 *}
13 * 2、3×3の被験者、生徒の中に格納された情報の平均値を各生徒を呼び出す
14 * 3、情報テーブルディスクファイルに格納されている
15 * * /
16 / * データ
17 * 12 77 88王66
18であります * 13周杰伦123 109 121
19 * 14薛之谦89 72 123
20 * * /
21
22
23 パッケージ宿題。
24
25 インポートjava.io.BufferedWriter。
26 インポートjava.io.FileWriter。
27 インポートにjava.io.IOException;
28 インポートはjava.util.ArrayList。
29 インポートはjava.util.List;
30 インポートjava.util.Scanner。
31
32 パブリック クラス_50 {
33
34 公共 静的 ボイドメイン(文字列[]引数){
35 // 情報を学習記憶するために使用されるビルドリストコンテナ、
36 リスト<学生>一覧= 新しい新規のArrayList <学生> ()
37 スキャナSC = 新しい新しいスキャナ(System.in); // システム入力スキャナ
38がある ため(INT ;私は<3; I ++ I = 0 ){
39 のSystem.out.println( "入力してください" +(I + 1)+ " 学生の数、名前、グレード1、グレード図2は、空間結果によって分離:( 3)「);
40 列[] = S sc.nextLine()スプリット(」「); // キーボードから文字列を取得し、スペースが5つのサブストリングに分割される
41は INT = Integer.parseInt ID(S [0]を); // IDを取得し
42のIS 名前= S列は、[1]; // 名前
43が INT Integer.parseIntグレード1 =(S [2]); // 。スコア1
44は、 INT grade2はInteger.parseInt =(S [3]); //は2スコア
45 のint grade3をInteger.parseInt =(S [4]); // 。スコア3
46である INT。AVER =(+ grade3 grade2グレード1 +)/ 3; // 3つの算出平均グレードスコアを有する
47 スチューデントSTU = 新しい新しい学生(ID、名前、グレード1、grade2、grade3、AVER);
48 List.add(STU); // データテーブルに格納されたデータ
49 }
50 sc.close(); // 閉じるスキャナ
51 // 出力データテーブル内のすべてのデータ
52である ため(INT I = 0; I <はlist.size(); I ++ ){
53は System.out.printの(List.get (I)+ "\ N-" );
54はある }
55
56はある // 文字バッファ出力ストリーム=====ああ理解してご覧作成
57は BufferedWriterの、OUT = ヌル;
58 試し{
59 OUT = 新しい新しい BufferedWriterの、(新しい新しいてFileWriterを( "D:/stud.txt")); // "D:/stud.txt"に格納されたデータ
60 のための(INT0 = I; I <はlist.size(); I ++){ // 反復データテーブル
61は out.write(List.get(I)+ "\ N-"); // 書き込みデータ
62がある out.newLine( ); // ラップ
63はある }
64 } キャッチ(IOExceptionをE){
65 ; e.printStackTrace()
66 } 最後に{
67 試し{
68 IF!(OUT = ヌル){
69 out.close();
70 }
71は } キャッチ(IOExceptionをE){
72 ; e.printStackTrace()
73である }
74 }
75
76 }
77
78 // カスタムクラスの学生
79 のパブリック 静的 クラス学生{
80 のint ID; // 科学番号
81 文字列名; // 名前
82 プライベート フロートグレード1; //は1つの結果
83 プライベート フロート grade2; // スコアを2
84 プライベート Aフロート grade3; // スコア3。
85 プライベート Aフロート AVER; // 平均スコア
86
87 公衆学生(int型の ID、文字列名、フロートグレード1、フロート grade2、フロート grade3、フロートAVER){
88 この .ID = ID;
89 この .nameの= 名;
90 この .grade1 = グレード1;
91であり 、この .grade2 = grade2;
92 この .grade3 =grade3;
93 この .aver = AVER;
94 }
95
96 公共の文字列のtoString(){
97 リターン "生徒番号:" + ID + "名:" +名+ "はスコア1:" +グレード1 + "スコア2:" + grade2 + "結果3: "
98 + + grade3"平均等級:「+ AVER;
99 }
100
101 }
102
103 }