java 创建自定义数组
1.java创建自定义类数组方法:
Student []stu = new Student[3]; for(int i = 0; i < 3; i ++) { stu[i] = new Student(); }
2.否则会提示空指针异常
package project; import java.io.*; import java.util.Scanner; class Student { private int id; private String name; private int score; public void setId(int id) { this.id = id; } public int getId() { return this.id; } public void setName(String name) { this.name = name; } public String getName() { return this.name; } public void setScore(int score) { this.score = score; } public int getScore() { return this.score; } } public class project2 { File file = new File("E:/data.txt"); FileWriter filewrite = null; BufferedWriter write = null; FileReader fileread = null; BufferedReader read = null; Student []stu = new Student[3]; public void put() { try { filewrite = new FileWriter(file); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } write = new BufferedWriter(filewrite); for(int i = 0; i < 3; i ++) { System.out.println("请输入第" + (i + 1) + "个学生的ID,姓名,成绩:"); Scanner in = new Scanner(System.in); try { String str = in.nextLine(); String data[] = str.split(" "); for(int j = 0; j < 3; j++) { write.write(data[j]); write.newLine(); } } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } try { write.close(); filewrite.close(); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } public void get() { int sum = 0; double ave; try { fileread = new FileReader(file); } catch (FileNotFoundException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } read = new BufferedReader(fileread); for(int i = 0; i < 3; i ++) { stu[i] = new Student(); try { stu[i].setId(Integer.parseInt(read.readLine())); stu[i].setName(read.readLine()); stu[i].setScore(Integer.parseInt(read.readLine())); } catch (Exception e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } for(int i = 0; i < 3; i ++) { sum += stu[i].getScore(); } ave = sum * 1.0/3; System.out.println("学生的平均成绩为:" + ave); try { read.close(); fileread.close(); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } public static void main (String []args) { project2 pro = new project2(); pro.put(); pro.get(); } }
总结:
这样我们就可以在项目当中,根据项目需求自己来定义想要的数组.
赞 (0)