回 帖 发 新 帖 刷新版面

主题:[讨论]请教一下,有关类数组的问题

using System;

class Myclass
{
    public class Student
    {
        public string Number, Name;
        public int Maths, English, Sum;
 
    }
    public static void Data_insert()
    {
        int Max = 2;
        [color=FF0000]Student[] student = new Student[Max];[/color]
        for (int i = 0; i < Max; i++)
        {
            student[i].Number = Console.ReadLine();
            student[i].Name = Console.ReadLine();
            student[i].Maths = Int32.Parse(Console.ReadLine());
            student[i].English = Int32.Parse(Console.ReadLine());
            student[i].Sum = student[i].Maths + student[i].English;
        }
        for (int i = 0; i < Max; i++)
        {
            Console.WriteLine("{0}", student[i].Number);
            Console.WriteLine("{0}", student[i].Name);
            Console.WriteLine("{0}", student[i].Maths);
            Console.WriteLine("{0}", student[i].English);
            Console.WriteLine("{0}", student[i].Sum);
        }
    }
   
    public static void Main()
    {
        Data_insert();        
    }

}

帮忙看下有什么问题,类的数组是这样建的吗?

回复列表 (共3个回复)

沙发

数组建立没有问题,问题出在使用上。

由于是元素类型为引用类型,所以数组只是单单完成了自身对象的初始化,并没有初始化元素(此时为null)。

所以在使用元素以前,要student[i]=new Student();

板凳


    没想到这论坛这么有用,今天下午才发的贴,晚上就有了满意的回复了.
      
    真是谢谢了!

3 楼

呵呵
只是声明了数组没有放东西啊

对象数组和普通数组的区别就在于对象数组放的是对象

其他的一样
普通数组也要初始化才能用吧?

我来回复

您尚未登录,请登录后再回复。点此登录或注册