真是学了后面忘了前面,一维数组都忘了
package com.c2; //总结类型转换不对,导致运行报错 //以及没有new,导致空指针异常 //引入流。 import java.io.*; public class Col { private String name; private float weight; public void setName(String b) { name = b; } public String getName() { return name; } public void setWeight(float a) { weight = a; } public float getWeight() { return weight; } public static void main(String[] args) throws IOException { Col w[] = new Col[4]; InputStreamReader isr = new InputStreamReader(System.in); BufferedReader bf = new BufferedReader(isr); for (int i = 0; i < 4; i++) { w[i] = new Col();// 若没有这步,将显示空指针异常 System.out.println("请输入第" + (i + 1) + "狗名:"); String name = bf.readLine();// 从控制台读取狗名 异常 w[i].setName(name); System.out.println("请输入第" + (i + 1) + "狗狗的体重:"); String s_weight = bf.readLine();// 程序在这里不往下了 float weight = Float.parseFloat(s_weight);// 如何把String类型转换成float类型 w[i].setWeight(weight); // 计算平均体重 // 先计算总体重 } float sum = 0; for (int i = 0; i < 4; i++) { sum += w[i].getWeight(); } float avgweight = sum / w.length; System.out.println("狗的体重为:" + sum + "狗的平均体重为:" + avgweight); } } 请输入第1只狗狗的姓名
2
请输第1只狗狗的体重
423.23
请输入第2只狗狗的姓名
3
请输第2只狗狗的体重
23421.4
请输入第3只狗狗的姓名
21
请输第3只狗狗的体重
1231.1231
请输入第4只狗狗的姓名
1
请输第4只狗狗的体重
231.12
狗狗的平均体重:6326.7183狗狗的总体重:25306.873