Example #1
0
        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");
            }
        }
Example #2
0
 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);
     }
 }
Example #3
0
        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
        }
Example #4
0
        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);
        }
Example #6
0
        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));
        }
Example #9
0
 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));
 }
Example #10
0
        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
        }
Example #12
0
        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));
        }
Example #13
0
 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());
     }
     //
 }
Example #14
0
        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!");
            }
        }
Example #15
0
 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);
     }
 }
Example #16
0
        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));
        }
        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);
        }
Example #19
0
        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);
        }
Example #20
0
        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;
        }