我将尝试保持简短和简单。 我创建了一个类似学生,学科和班级的列表。一个学生可以上课,可以将一个科目分配给一个学生,依此类推。此代码可以正常工作,没有问题,但是我认为它可以为您解决一些问题,因此我将其添加了。
说了...
我正在尝试测试是否可以使用重写ToString方法打印代码。 问题是我得到了错误:即使我告诉方法返回一个字符串,也无法从“方法组”转换为“布尔” 。
有人知道是什么原因吗?
代码(供参考)
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Lists.ToString);
}
}
我想保持Program类的整洁,因此我将原本存在的代码放入了另一个类。我还注意到,出于某种原因,tostring覆盖在那里不起作用。
class Lists
{
static List<Klas> Klassenlijst = new List<Klas>()
{
//new classes get created
new Klas("KL0001", "AO1-A", new List<Student>()), //klas [0]
new Klas("KL0002", "AO1-B", new List<Student>()), //klas [1]
new Klas("KL0003", "AO2-A", new List<Student>()), //klas [2]
new Klas("KL0004", "AO3-B", new List<Student>()), //klas [3]
new Klas("KL0005", "GD1-A", new List<Student>()), //klas [4]
new Klas("KL0069", "STM-F", new List<Student>()), //klas [5]
};
//A big ol' list with students.
static List<Student> StudentenLijst = new List<Student>()
{
new Student("S101010", "Test123", "69", "420"), //student [0]
new Student("S202020", "Dio Brando", "1234AT", "+31 06 261552"), //student [1]
new Student("S303030", "Mark Rutte", "2345MK", "+31 06 289985"), //student [2]
new Student("S404040", "Jarl Balgruuf", "5897WH", "+31 06 123456"), //student [3]
new Student("S505050", "Darth Revan", "3131MK", "+31 06 280985"), //student [4]
new Student("S606060", "Geralt Of Rivia", "3459RV", "+31 06 909090"), //student [5]
new Student("S707070", "Obama II", "0262BR", "+31 06 158775"), //student [6]
};
//List with subjects a student can follow
static List<Vakken> VakkenLijst = new List<Vakken>()
{
new Vakken("0", "Nederlands"), //Vak [0]
new Vakken("1", "Engels"), //Vak [1]
new Vakken("2", "Rekenen"), //Vak [2]
new Vakken("3", "Software Programming"), //Vak [3]
new Vakken("4", "Web Development"), //Vak [4]
new Vakken("5", "Tools en Devices"), //Vak [5]
new Vakken("6", "Maatschappijleer"), //Vak [6]
new Vakken("7", "Game Development"), //Vak [7]
new Vakken("8", "project"), //Vak [8]
};
public void AlleLijsten()
{
//Adds students to a class---------------------------------------------------------------------
//Creates a new class variable and binds it the classlist
Klas klas01 = Klassenlijst[0];
Klas klas02 = Klassenlijst[1];
Klas klas03 = Klassenlijst[2];
Klas klas04 = Klassenlijst[3];
Klas klas05 = Klassenlijst[4];
Klas klas69 = Klassenlijst[5];
//makes a new student variable and binds it to a student object in the student list.
Student student01 = StudentenLijst[0];
Student student02 = StudentenLijst[1];
Student student03 = StudentenLijst[2];
Student student04 = StudentenLijst[3];
Student student05 = StudentenLijst[4];
Student student06 = StudentenLijst[5];
Student student07 = StudentenLijst[6];
//Bunch of students get assigned to a class (theres a bunch of code behind here that i dont show)
klas01.Voegstudenttoe(student01);
klas01.Voegstudenttoe(student02);
klas01.Voegstudenttoe(student03);
klas02.Voegstudenttoe(student04);
klas02.Voegstudenttoe(student01);
klas03.Voegstudenttoe(student05);
klas04.Voegstudenttoe(student06);
klas69.Voegstudenttoe(student04);
klas69.Voegstudenttoe(student07);
//Assign a subject to a student-----------------------------------------------------------------------
//creates a subject variable and binds it to an actual subject
Vakken VakNED = VakkenLijst[0];
Vakken VakENG = VakkenLijst[1];
Vakken VakREK = VakkenLijst[2];
Vakken VakSWP = VakkenLijst[3];
Vakken VakWDV = VakkenLijst[4];
Vakken VakTND = VakkenLijst[5];
Vakken VakMSL = VakkenLijst[6];
Vakken VakGDV = VakkenLijst[7];
Vakken VakPRJ = VakkenLijst[8];
//vakken aanwijzen aan de studenten
//student 2 gets a bunch of subjects assigned
student01.VoegVakToe(VakNED);
student01.VoegVakToe(VakENG);
student01.VoegVakToe(VakPRJ);
student01.VoegVakToe(VakMSL);
student01.VoegVakToe(VakWDV);
student01.VoegVakToe(VakSWP);
//same goes for student 2
student02.VoegVakToe(VakWDV);
student02.VoegVakToe(VakSWP);
//rince and repeat
student03.VoegVakToe(VakWDV);
student03.VoegVakToe(VakSWP);
//student 4 krijgt vakken aangewezen
student04.VoegVakToe(VakWDV);
student04.VoegVakToe(VakSWP);
student04.VoegVakToe(VakNED);
//student 5 krijgt vakken aangewezen
student05.VoegVakToe(VakWDV);
student05.VoegVakToe(VakSWP);
//student 6 krijgt vakken aangewezen
student06.VoegVakToe(VakWDV);
student06.VoegVakToe(VakGDV);
student06.VoegVakToe(VakSWP);
student06.VoegVakToe(VakREK);
student06.VoegVakToe(VakNED);
student06.VoegVakToe(VakPRJ);
//student 7 krijgt vakken aangewezen
student07.VoegVakToe(VakSWP);
student07.VoegVakToe(VakREK);
student07.VoegVakToe(VakNED);
student07.VoegVakToe(VakPRJ);
}
public new static string ToString()
{
return $"Lijst met alle klassen: {String.Join("\n", Klassenlijst)}";
}
}
我只是一个初学者,我的知识并不特别深刻,所以如果我在某个地方犯了一个愚蠢的错误,请原谅我。
编辑:之所以只打印带有类的列表,是因为我只想查看打印是否有效。其余的会在以后。
编辑II:为什么首先要转换为bool?
答案 0 :(得分:3)
您忘了在ToString()
方法调用中添加括号。
Console.WriteLine(Lists.ToString);
应为:
Console.WriteLine(Lists.ToString());