using System;
using System.Collections;
class CourseScore
{
private string name;
private int courseID;
private int score;
public CourseScore(string name, int courseID, int score)
{
this.name = name;
this.courseID = courseID;
this.score = score;
}
public string Name
{
get { return name; }
set { name = value; }
}
public int CourseID
{
get { return courseID; }
set { courseID = value; }
}
public int Score
{
get { return score; }
set { score = value; }
}
}
class CourseScoreIndexer
{
private ArrayList arrCourseScore;
public CourseScoreIndexer()
{
arrCourseScore = new ArrayList();
}
public int this[string name, int courseID]
{
get
{
foreach(CourseScore cs in arrCourseScore)
{
if (cs.Name == name && cs.CourseID == courseID)
return cs.Score;
}
return -1;
}
set
{
arrCourseScore.Add(new CourseScore(name, courseID, value));
}
}
public ArrayList this[string name]
{
get
{
ArrayList tempArray = new ArrayList();
foreach (CourseScore cs in arrCourseScore)
{
if (cs.Name == name)
tempArray.Add(cs);
}
return tempArray;
}
}
}
class Test
{
static void Main()
{
CourseScoreIndexer csi = new CourseScoreIndexer();
csi["张三", 1] = 90;
csi["张三", 2] = 70;
csi["张三", 3] = 85;
csi["李四", 1] = 80;
Console.WriteLine(csi["张三", 2]);
Console.WriteLine("张三的所有的课程成绩为:");
ArrayList tempArray;
tempArray = csi["张三"];
foreach (CourseScore cs in tempArray)
{
Console.WriteLine("姓名:{0} 课程:{1} 分数:{2}", cs.Name, cs.CourseID, cs.Score);
}
Console.Read();
}
}
c#基础知识学习笔记 - 多个参数的索引器
最新推荐文章于 2022-03-28 21:13:18 发布