static void Main() { List <Course> courses = new List <Course>(); courses.Add(new Course("Informatics")); Student pesho = new Student("Pesho", "Petrov", "Petrov", "12345", "Sofia", "0888123456", "*****@*****.**", courses, enumFaculties.Bachelor, enumSpecialties.Informatics, enumUniversity.NewBulgarianUniversity); Console.WriteLine(pesho); // We're creating a clone of our student Student peshoClone = (Student)pesho.Clone(); // Adding some curses and changing the university of the original student courses.Add(new Course("C#")); pesho.Courses = courses; pesho.University = enumUniversity.TechnicalUniversity; // And we can see that the changes are only to the original, so the cloning is indeed deep Console.WriteLine(pesho); Console.WriteLine(peshoClone); if (pesho.CompareTo(peshoClone) == 0) { Console.WriteLine("Students are same person"); } else { Console.WriteLine("These are different students"); } }
static void Main() { Student a = new Student("AAA", "BBB", "CCC", 322, "aaaa bbb", "12345678", "*****@*****.**", "courseAAAA", SpecialtyEnum.aaaSp, UniversityEnum.aaUn, FacultyEnum.cccFac); Student b = new Student("ZZZ", "BBB", "CCC", 321, "aaaa bbb", "12345678", "*****@*****.**", "courseAAAA", SpecialtyEnum.aaaSp, UniversityEnum.aaUn, FacultyEnum.cccFac); Student c = new Student("AAA", "BBB", "CCC", 321, "aaaa bbb", "12345678", "*****@*****.**", "courseAAAA", SpecialtyEnum.aaaSp, UniversityEnum.aaUn, FacultyEnum.cccFac); Console.WriteLine(a.ToString()); Console.WriteLine(); Console.WriteLine(b.ToString()); Console.WriteLine(); Console.WriteLine(c.ToString()); Console.WriteLine("student a is student b:{0}",a.Equals(b)); Console.WriteLine("student a is student c:{0}", a.Equals(c)); Console.WriteLine("student a is student c:{0}", a==c); Console.WriteLine("student a is not student c:{0}", a != c); Console.WriteLine("student a is not student b:{0}", a != b); Console.WriteLine("Student not overriden hash code:{0} {1} {2}",a.FirstName.GetHashCode(),a.MiddleName.GetHashCode(),a.LastName.GetHashCode()); Console.WriteLine("Student a overriden hash code:{0}",a.GetHashCode()); var d = a.Clone(); Console.WriteLine(); Console.WriteLine("Cloned student a:"); Console.WriteLine(d.ToString()); var students = new Student[] { c, b, a }.OrderBy(x => x).ToArray(); foreach (var st in students) { Console.WriteLine(st.FirstName +" " + st.MiddleName+" "+st.LastName+" "+st.SSN); } }
static void Main() { Student student1 = new Student("Ivan", "Ivanov", "Ivanov", "486939693", "Sofia", "088888888", "*****@*****.**", "first", Enums.Specialty.ComputerScience, Enums.University.TechnicalUniversity, Enums.Faculty.FacultyOfComputerSystemsAndControl); Student student2 = new Student("Ivan", "Ivanov", "Ivanov", "486939693", "Sofia", "088888888", "*****@*****.**", "first", Enums.Specialty.ComputerScience, Enums.University.TechnicalUniversity, Enums.Faculty.FacultyOfComputerSystemsAndControl); Student student3 = new Student("Ivan", "Ivanov", "Ivanov", "484830703", "Sofia", "0888999999", "*****@*****.**", "first", Enums.Specialty.ComputerScience, Enums.University.TechnicalUniversity, Enums.Faculty.FacultyOfComputerSystemsAndControl); Console.WriteLine(student1.Equals(student2)); //True Console.WriteLine(student2.Equals(student3)); //False Console.WriteLine(student1 == student2); //True Console.WriteLine(student2 != student3); //True Console.WriteLine(student1.GetHashCode()); Console.WriteLine(student2.GetHashCode()); Student newStudent = student1.Clone() as Student; student1.FirstName = "Georgi"; Console.WriteLine(student1); Console.WriteLine(); Console.WriteLine(newStudent); Console.WriteLine(student1.CompareTo(student2)); //-1 Console.WriteLine(student2.CompareTo(student3)); //1 }
static void Main() { Student a = new Student("AAA", "BBB", "CCC", 322, "aaaa bbb", "12345678", "*****@*****.**", "courseAAAA", SpecialtyEnum.aaaSp, UniversityEnum.aaUn, FacultyEnum.cccFac); Student b = new Student("ZZZ", "BBB", "CCC", 321, "aaaa bbb", "12345678", "*****@*****.**", "courseAAAA", SpecialtyEnum.aaaSp, UniversityEnum.aaUn, FacultyEnum.cccFac); Student c = new Student("AAA", "BBB", "CCC", 321, "aaaa bbb", "12345678", "*****@*****.**", "courseAAAA", SpecialtyEnum.aaaSp, UniversityEnum.aaUn, FacultyEnum.cccFac); Console.WriteLine(a.ToString()); Console.WriteLine(); Console.WriteLine(b.ToString()); Console.WriteLine(); Console.WriteLine(c.ToString()); Console.WriteLine("student a is student b:{0}", a.Equals(b)); Console.WriteLine("student a is student c:{0}", a.Equals(c)); Console.WriteLine("student a is student c:{0}", a == c); Console.WriteLine("student a is not student c:{0}", a != c); Console.WriteLine("student a is not student b:{0}", a != b); Console.WriteLine("Student not overriden hash code:{0} {1} {2}", a.FirstName.GetHashCode(), a.MiddleName.GetHashCode(), a.LastName.GetHashCode()); Console.WriteLine("Student a overriden hash code:{0}", a.GetHashCode()); var d = a.Clone(); Console.WriteLine(); Console.WriteLine("Cloned student a:"); Console.WriteLine(d.ToString()); var students = new Student[] { c, b, a }.OrderBy(x => x).ToArray(); foreach (var st in students) { Console.WriteLine(st.FirstName + " " + st.MiddleName + " " + st.LastName + " " + st.SSN); } }
static void Main() { Student student = new Student("Ifaka", "Ne4ii", "Si", "math", Specialty.IT, University.TelerikAcademy, Faculty.SSS); Console.WriteLine(student.ToString()); Student copiedStudent = student.Clone(); Console.WriteLine(copiedStudent); }
static void Main() { //Test clone Student testStudent = new Student("Brym", "Brym", "Brym", 234567, "lqlqlqlqlq", "04895749875", "lasdhk@kajs", University.Uni1, Faculty.Fakultet1, Specialty.Spec1, 4); Student cloneStudent = testStudent.Clone(); Console.WriteLine("Are students equal? : {0}", testStudent.Equals(cloneStudent)); //Test deep copy and ToStirng() cloneStudent.SSN = 1111111; Console.WriteLine(cloneStudent); }
public static void Main() { Student firstStudent = new Student("Pesho", "Goshev", "Toshev", "33344477712", "First Student's Address", "First Students Phone", "First Student's Phone", "fift", Specialties.Economics, Universities.UNSS, Faculties.Economics_Sciences); Student secondStudent = new Student("Gosho", "Toshev", "Peshov", "44477712333", "Second Student's Address", "Second Students Phone", "First Student's Phone", "third", Specialties.Mathematics, Universities.SU, Faculties.Mathematics_Sciences); Console.WriteLine(firstStudent); secondStudent = firstStudent.Clone() as Student; Console.WriteLine(firstStudent == secondStudent); }
private static void Main() { Student ivan = new Student { FirstName = "Ivan", MiddleName = "Ivanov", LastName = "Ivanov", Ssn = 1231231231, PermanentAddress = "Bulgaria, Sofia 1000, Minzuhar str. 123", MobilePhone = "+359887123123", Email = "*****@*****.**", Course = 2, Faculty = FacultyType.Culture, University = UniversityType.Private, Specialty = SpecialtyType.Bachelor }; Student pesho = new Student { FirstName = "Pesho", MiddleName = "Peshev", LastName = "Peshov", Ssn = 9999999999, PermanentAddress = "Bulgaria, Sofia 1000, Kokiche str. 321", MobilePhone = "+359889321321", Email = "*****@*****.**", Course = 2, Faculty = FacultyType.Economic, University = UniversityType.Public, Specialty = SpecialtyType.Doctor }; Console.WriteLine(ivan); Console.WriteLine(pesho); Console.WriteLine("Equals: {0}", pesho.Equals(ivan)); Console.WriteLine("GetHashCode() {0} {1}", "pesho", pesho.GetHashCode()); Console.WriteLine("GetHashCode() {0} {1}", "ivan", ivan.GetHashCode()); Console.WriteLine("pesho == ivan {0}", pesho == ivan); Console.WriteLine("pesho != ivan {0}", pesho != ivan); Student mircho = pesho.Clone(); mircho.FirstName = "Mircho"; mircho.MiddleName = "Mirchev"; mircho.LastName = "Mirchev"; mircho.Ssn = 9999999999; Console.WriteLine("GetHashCode() {0} {1}", "mircho", mircho.GetHashCode()); Console.WriteLine("Compare: mircho and pesho = " + mircho.CompareTo(pesho)); Console.WriteLine("Compare: mircho and mircho = " + mircho.CompareTo(mircho)); }
static void Main(string[] args) { Student ahs = new Student("Asd", "Dasd", "Fad", "FN34534", "Sofia, 1400", "+359888888888", "*****@*****.**", 3, Specialties.Biologia, Universities.SU, Faculties.FHF); Student asd = new Student("Asd", "Dasd", "Fad", "FN34534", "Sofia, 1400", "+359888888888", "*****@*****.**", 3, Specialties.Biologia, Universities.SU, Faculties.FHF); Student clone = asd.Clone(); Student notclone = asd; clone.FirstName = "AAAAAAAAAAA"; notclone.FirstName = "ddd"; Console.WriteLine(asd.FirstName); Console.WriteLine(clone.FirstName); Console.WriteLine(ahs.CompareTo(clone) == 0); Console.WriteLine(ahs.CompareTo(asd)); }
static void Main(string[] args) { Student myStudent = new Student(); myStudent.FirstName = "Pesho"; myStudent.LastName = "Dimitrov"; myStudent.Faculty = Faculty.IT; myStudent.University = University.TelerikAcademy; myStudent.Specialty = Specialty.Chemistry; // testing cloning var clonedStudent = myStudent.Clone() as Student; Console.WriteLine("clonedStudent is Student: {0}", clonedStudent is Student); // Testing deep cloning myStudent.FirstName = "Zdravko"; Console.WriteLine("myStudent: {0}", myStudent.FirstName); Console.WriteLine("clonedStudent: {0}", clonedStudent.FirstName); clonedStudent.FirstName = "Zdravko"; Console.WriteLine("myStudent: {0}", myStudent.FirstName); Console.WriteLine("clonedStudent: {0}", clonedStudent.FirstName); // testing Equals Console.WriteLine("myStudent.Equals(clonedStudent): {0}", myStudent.Equals(clonedStudent)); // testing .ToString(); Console.WriteLine("clonedStudent Information: \n {0}", clonedStudent.ToString()); // testing .GetHashCode(); Console.WriteLine("GetHashCode() = {0}", clonedStudent.GetHashCode()); // testing == and != Console.WriteLine("myStudent==clonedStudent: {0}", myStudent == clonedStudent); Console.WriteLine("myStudent!=clonedStudent: {0}", myStudent != clonedStudent); // testing CompareTo Console.WriteLine("myStudent.CompareTo(clonedStudent): {0}", myStudent.CompareTo(clonedStudent)); myStudent.FirstName = "AAAA"; Console.WriteLine("myStudent.CompareTo(clonedStudent): {0}", myStudent.CompareTo(clonedStudent)); myStudent.FirstName = "ZZZZ"; Console.WriteLine("myStudent.CompareTo(clonedStudent): {0}", myStudent.CompareTo(clonedStudent)); clonedStudent.FirstName = "ZZZZ"; Console.WriteLine("myStudent.CompareTo(clonedStudent): {0}", myStudent.CompareTo(clonedStudent)); clonedStudent.SSN = "123"; Console.WriteLine("myStudent.CompareTo(clonedStudent): {0}", myStudent.CompareTo(clonedStudent)); myStudent.SSN = "456"; Console.WriteLine("myStudent.CompareTo(clonedStudent): {0}", myStudent.CompareTo(clonedStudent)); }
public static void Main() { Student vankata = new Student("Ivan", "Ivanov", "Ivanov", "123456789", "Grad Sofia", "0888123456", 3, UniversityEnum.UNSS, FacultyEnum.Law, SpecialtyEnum.PublicLaw); Student cloningOfVankata = (Student)vankata.Clone(); Student bugCloningOfVankata = new Student("Ivan", "Ivanov", "Ivanov", "123456798", "Grad Sofia", "0888123456", 3, UniversityEnum.UNSS, FacultyEnum.Law, SpecialtyEnum.PublicLaw); Console.WriteLine(vankata.ToString()); Console.WriteLine(vankata.GetHashCode()); Console.WriteLine(vankata.Equals(cloningOfVankata)); // return true Console.WriteLine(vankata == bugCloningOfVankata); // return false Console.WriteLine(vankata != cloningOfVankata); // return false Console.WriteLine(vankata.CompareTo(bugCloningOfVankata)); // returns -1 }
static void Main(string[] args) { Student ivan = new Student("Ivan", "Ivanov", "Ivanov", "0000", "Sofia", "+359*********", "*****@*****.**", 2, University.NewBulgarianUniversity, Faculty.MathmetaticsInformatics, Speciality.ComputerScience); Console.WriteLine(ivan); Student ivancho = new Student("Ivan", "Ivanov", "Ivanov", "0000", "Varna", "+359*********", "*****@*****.**", 2, University.SofiaUniversity, Faculty.Marketing, Speciality.Tourism); Console.WriteLine(ivancho); Console.WriteLine("Ivan == Ivancho -> {0}", ivan == ivancho); Console.WriteLine("Ivancho equals ivan -> {0}", ivancho.Equals(ivan)); Student ivan2 = ivan.Clone() as Student; ivan.LastName = "Ivanovski"; Console.WriteLine("ivan == ivan2 -> {0}", ivan == ivan2); Console.WriteLine("Comparing ivan2 with ivan -> {0}", ivan2.CompareTo(ivan)); }
static void Main() { //01 Student st1 = new Student("Ivan", "Petkov", "Ivanov", "0123456789"); Student st2 = new Student("Petkan", "Petkov", "Slivanov", "9874561230"); Student st3 = new Student("Mariq", "Marova", "Mareva", "1230456789"); Student st4 = new Student("Mariq", "Marova", "Mareva", "0230456789"); Console.WriteLine("This is 01 exercise:"); Console.WriteLine(st1.ToString()); Console.WriteLine(st2.ToString()); Console.WriteLine("Are those two Equal ?"); Console.WriteLine(Equals(st1,st2)); Console.WriteLine(); //02 Console.WriteLine("This is 02 exercise:"); Student cloneSt1 = st1.Clone(); Console.WriteLine("This is the clone of st1 Say Hi :"); Console.WriteLine(cloneSt1.ToString()); Console.Write("Are they really identical ? --> {0}",Equals(st1,cloneSt1)); cloneSt1.FirstName = "Pencho"; Console.WriteLine(); Console.WriteLine("After change first name ? -> {0}",Equals(st1,cloneSt1)); Console.WriteLine(); //03 Console.WriteLine("This is 03 exercise:"); List<Student> studentList = new List<Student>(); studentList.Add(st1); studentList.Add(st2); studentList.Add(st3); studentList.Add(st4); Console.WriteLine("Before Sorting"); foreach (var student in studentList) { Console.WriteLine(student.ToString()); } studentList.Sort(); Console.WriteLine("And this is after "); foreach (var student in studentList) { Console.WriteLine(student.ToString()); } // }
static void Main(string[] args) { //test Student student1 = new Student( "Pesho", "Ivanov", "Peshev", "A11-11-1111", 1, Enums.Univercity.Cambridge, Enums.Specialty.Humanities, Enums.Faculty.History); Student student2 = new Student( "Gosho", "Ivanov", "Goshev", "111-22-1111", 1, Enums.Univercity.Oxford, Enums.Specialty.Social, Enums.Faculty.Law); //print students Console.WriteLine(student1.ToString()); Console.WriteLine(student2.ToString()); //compare students if (student1.CompareTo(student2)<0) { Console.WriteLine("student1 is before student2!" + "\n"); } if (student1.CompareTo(student2) > 0) { Console.WriteLine("student1 is after student2!" + "\n"); } if (student1.CompareTo(student2) == 0) { Console.WriteLine("student1 is after student2!" + "\n"); } //clone Student1 and print it Student student3 = student1.Clone(); Console.WriteLine(student3); //check if students are equal if (student1 == student2) { Console.WriteLine("student1 is equal to student2!"); } else if (student1 != student2) { Console.WriteLine("student1 is NOT equal to student2!"); } }
static void Main(string[] args) { //public Student(string firstName, string middleName, string lastName, string ssn, string address, //string phone, string email, byte course, Speciality speciality, University university, Faculty faculty) Student firstStudent = new Student("Ivan","Ivanov","Ivanov","123456789","Sofia city","0888888888" ,"*****@*****.**",2,Speciality.ComputerSystem,University.NewBulgarianUniversity,Faculty.FKSU); Console.WriteLine(firstStudent); Student secondStudent = firstStudent.Clone() as Student; Console.WriteLine(secondStudent); secondStudent.Ssn = "000123784"; Student thirdStudent = new Student("Pesho", "Ivanov", "Peshov", "123456789", "Sofia city", "0888888888" , "*****@*****.**", 3, Speciality.InformationTechnologies, University.SofiaUniversity, Faculty.FMI); Console.WriteLine(thirdStudent); Student[] students = { firstStudent, secondStudent, thirdStudent }; Array.Sort(students); Console.WriteLine("Sorted..."); foreach (Student student in students) { Console.WriteLine(student); } }
public static void Main() { // test Equal() var firstStudent = new Student("Marshall", "Bruce", "Mathers", 113); firstStudent.Email = "*****@*****.**"; var secondStudent = new Student("Tupac", "Amaru", "Shakur", 113, Universities.UNWE, Faculties.BusinessFaculty, Specialties.IndustrialBusiness); bool isEqualStrings = firstStudent.Equals(secondStudent); Console.WriteLine("{0}\n{1}\nAre they equal? -> {2}\n", firstStudent, secondStudent, isEqualStrings); // test Clone() var thirdStudent = firstStudent.Clone(); thirdStudent.Email = "*****@*****.**"; Console.WriteLine(firstStudent.Email); Console.WriteLine(thirdStudent.Email); Console.WriteLine(); // test CompareTo() Console.WriteLine(firstStudent.CompareTo(secondStudent)); // -1 if first < second }
public static void Main() { var student = new Student("Pesho", "Petrov", "Peshov", "123-45-6789", "some address", "some phone", "some eMail", 2, Universities.TU, Faculties.Mathematics, Specialities.Drinking); var otherStudent = new Student("Pesho", "Petrov", "Peshov", "000-11-2222", "some address", "some phone", "some eMail", 2, Universities.TU, Faculties.Mathematics, Specialities.Drinking); Console.WriteLine(" Two students with same names, universities and all, except SSN:"); Console.WriteLine("{0}\n -{1}'s hash code = {2}\n", student, student.FirstName, student.GetHashCode()); Console.WriteLine("{0}\n -{1}'s hash code = {2}\n", otherStudent, otherStudent.FirstName, otherStudent.GetHashCode()); Console.WriteLine("Are the two students equal? - {0}", student == otherStudent); Console.WriteLine("Are the two students different? - {0}", student != otherStudent); Console.Write(separator); Console.WriteLine(" Two students, one is clone of the other:"); var clone = (Student)student.Clone(); clone.Course = 4; clone.MobilePhone = "another phone"; clone.PermanentAddress = "new address"; Console.WriteLine("Original: {0}", student); Console.WriteLine("Clone with changed phone, address and course: {0}", clone); Console.WriteLine("The original is not affected by changes made in the clone."); Console.Write(separator); Student newStudent = new Student("Gosho", "Petrov", "Peshov", "123-45-6789", "some address", "some phone", "some eMail", 2, Universities.TU, Faculties.Mathematics, Specialities.Dancing); Console.WriteLine(" Comparing two students with same names but different SSNs: "); CompareStudents(student, otherStudent); Console.WriteLine(" Comparing two students with different names: "); CompareStudents(student, newStudent); Console.WriteLine(" Comparing two students with same names and SSNs: "); CompareStudents(student, clone); Console.Write(separator); }
public static void Main() { var firstStudent = new Student("Kiro", "Skalata", "Valchev", "123-45-6789", "Unknown address", "0888747474", "*****@*****.**", 4, Universities.MedicalUniversity, Faculties.DentalMedicineFaculty, Specialties.DentalMedicine); var secondStudent = new Student("Kiro", "Skalata", "Valchev", "987-65-4321", "Unknown address", "0886454545", "*****@*****.**", 4, Universities.SofiaUniversity, Faculties.FMI, Specialties.SoftwareEngineer); var thirdStudent = new Student("Dimitar", "Pishtova", "Marinov", "321-56-9784", "Unknown address", "0895636363", "*****@*****.**", 4, Universities.TechnicalUniversity, Faculties.TransportFaculty, Specialties.TransportEngineer); bool compareFirstAndSecond = firstStudent.Equals(secondStudent); bool compareFirstAndThird = firstStudent.Equals(thirdStudent); bool operatorsCompareFirstAndSecond = firstStudent == secondStudent; bool operatorsCompareFirstAndThird = firstStudent != thirdStudent; var hashCodeTest = firstStudent.GetHashCode(); // test ToString(); Console.WriteLine(firstStudent + "\n"); Console.WriteLine(secondStudent + "\n"); Console.WriteLine(thirdStudent + "\n"); Console.WriteLine("Compare first and second with Equals: {0}", compareFirstAndSecond); Console.WriteLine("Compare first and third with Equals: {0}\n", compareFirstAndThird); Console.WriteLine("Compare first and second with == {0}", operatorsCompareFirstAndSecond); Console.WriteLine("Compare first and third with == {0}\n", operatorsCompareFirstAndThird); Console.WriteLine("Compare first and second with CompareTo: {0}", firstStudent.CompareTo(secondStudent)); Console.WriteLine("Compare first and third with CompareTo: {0}\n", firstStudent.CompareTo(thirdStudent)); var cloned = thirdStudent.Clone() as Student; Console.WriteLine("Cloned == thirdStudent? {0}", cloned == thirdStudent); thirdStudent = secondStudent; Console.WriteLine("Cloned == thirdStudent? after swapping? {0}", cloned == thirdStudent); }
static void Main(string[] args) { //public Student(string firstName, string middleName, string lastName, string ssn, string address, //string phone, string email, byte course, Speciality speciality, University university, Faculty faculty) Student firstStudent = new Student("Ivan", "Ivanov", "Ivanov", "123456789", "Sofia city", "0888888888" , "*****@*****.**", 2, Speciality.ComputerSystem, University.NewBulgarianUniversity, Faculty.FKSU); Console.WriteLine(firstStudent); Student secondStudent = firstStudent.Clone() as Student; Console.WriteLine(secondStudent); secondStudent.Ssn = "000123784"; Student thirdStudent = new Student("Pesho", "Ivanov", "Peshov", "123456789", "Sofia city", "0888888888" , "*****@*****.**", 3, Speciality.InformationTechnologies, University.SofiaUniversity, Faculty.FMI); Console.WriteLine(thirdStudent); Student[] students = { firstStudent, secondStudent, thirdStudent }; Array.Sort(students); Console.WriteLine("Sorted..."); foreach (Student student in students) { Console.WriteLine(student); } }
static void Main() { Student Pesho = new Student("Pesho", "Goshov", "Todorov", "092511", "Vratza", "0888123456", "*****@*****.**", Specialty.Geodesy, University.MGU, Faculty.Mechanical); Student Ivan = new Student("Ivan", "Goshov", "Todorov", "092511", "Vratza", "0888123456", "*****@*****.**", Specialty.Geodesy, University.MGU, Faculty.Mechanical); bool traing = Pesho == Ivan; Console.WriteLine(traing); Console.WriteLine(Pesho.ToString()); //Problem 2 - Clone Student newbie = (Student)Pesho.Clone(); Console.WriteLine(newbie.ToString()); Console.WriteLine(); Pesho.Speciality = Specialty.Automation; Pesho.University = University.TU; Console.WriteLine(Pesho.ToString()); Console.WriteLine(newbie.ToString()); //Problem 3 - Compare Console.WriteLine(); Console.WriteLine("Problem 3 - Compare to"); Console.WriteLine(Pesho.CompareTo(Ivan)); //Problem 4 - Person Console.WriteLine(); Person mrPesho = new Person("Peshoto", 31); Person mrGosho = new Person("Gosheto"); Console.WriteLine(mrPesho.ToString()); Console.WriteLine(mrGosho.ToString()); }
static void Main() { // Test the constructors and ToString() Student pesho = new Student("Pesho", "Peshov", "Petrov", "9201020304", University.SU, Faculty.Philosophy, Specialty.Philosophy, 2); Student peshoFull = new Student("Pesho", "Peshov", "Petrov", "9201020304", "Sofia, Pirotska 21", "0888123456", "*****@*****.**", University.SU, Faculty.Philosophy, Specialty.Philosophy, 2); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("ORIGINAL STUDENTS:"); Console.WriteLine(); Console.WriteLine(pesho); Console.WriteLine(); Console.WriteLine(peshoFull); Console.WriteLine(); // Test Clone Student ivan = pesho.Clone() as Student; // Clone() returns object so it has to be casted to Student Student ivanFull = peshoFull.Clone() as Student; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("CLONED STUDENTS:"); Console.WriteLine(); Console.WriteLine(ivan); Console.WriteLine(); Console.WriteLine(ivanFull); Console.WriteLine(); //Change property of clone and see if it changes for the original ivan.FirstName = "Ivan"; ivanFull.FirstName = "Ivan"; Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("ORIGINAL STUDENTS:"); Console.WriteLine(); Console.WriteLine(pesho); Console.WriteLine(); Console.WriteLine(peshoFull); Console.WriteLine(); Console.WriteLine("CLONED STUDENTS:"); Console.WriteLine(); Console.WriteLine(ivan); Console.WriteLine(); Console.WriteLine(ivanFull); Console.WriteLine(); // Test CompareTo(), == , != Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("COMPARETO() TEST:"); Console.WriteLine(); Console.WriteLine(pesho.CompareTo(ivan)); // 1 -> P > I (in lexicographic order) Console.WriteLine(pesho.CompareTo(ivanFull)); // 1 -> P > I (in lexicographic order) Console.WriteLine(ivan.CompareTo(pesho)); // -1 -> I < P (in lexicographic order) Console.WriteLine(ivan.CompareTo(peshoFull)); // -1 -> I < P (in lexicographic order) Console.WriteLine(); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("== AND != TEST:"); Console.WriteLine(); Console.WriteLine(pesho == ivan); // False Console.WriteLine(pesho != ivan); // True Console.WriteLine(pesho == ivanFull); // False Console.WriteLine(pesho != ivanFull); // True Console.WriteLine(pesho == peshoFull); // True Console.WriteLine(pesho != peshoFull); // False Console.WriteLine(); // Test Equals() Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("EQUALS() TEST:"); Console.WriteLine(); Console.WriteLine(pesho.Equals(peshoFull)); // True Console.WriteLine(pesho.Equals(ivan)); // False Console.WriteLine(); Console.ForegroundColor = ConsoleColor.Yellow; }