static void Main(string[] args) { // new features in C# 6 // auto property initialisation // null propagating operator // string interpolation // nameof operator // runtime exception filter with when // new dictionary initializer // expresson bodied members var p = new Person(); var p2 = new Person { LastName = "Mustermann2" }; Person p3 = null; var persons = new List<Person>(); persons.Add(p); persons.Add(p2); persons.Add(p3); persons = persons.Where(px => px.LastName.EndsWith("2")).ToList(); persons.Clear(); var dict = new Dictionary<int, Person> { [1] = p, [2] = p2 }; foreach (var pers in persons) { //string firstName = null; //if (pers != null) // firstName = pers.FirstName; string firstName = null; try { firstName = pers.FirstName; } catch (NullReferenceException ex) when (firstName == null) { } catch (NullReferenceException ex) when (firstName == null) { } catch (Exception ex) { } //string firstName = pers?.FirstName; //Console.WriteLine(string.Format("Firstname: {0}", firstName)); Console.WriteLine($"Firstname: {pers?.FirstName}"); } }
static void Main(string[] args) { // First customer var person1 = new Person(); person1.firstName = "Vik"; person1.lastName = "Ewoods"; person1.passportPrefix = new char[2]; person1.passportPrefix[0] = 'A'; person1.passportPrefix[1] = 'D'; person1.passportSerial = 209901; person1.customerBalance = 1789.98F; // Second customer var person2 = new Person(); person2.firstName = "Di"; person2.lastName = "Dila"; person2.passportPrefix = new char[2]; person2.passportPrefix[0] = 'D'; person2.passportPrefix[1] = 'C'; person2.passportSerial = 345887; person2.customerBalance = 13099.65F; // Third customer var person3 = new Person(); person3.firstName = "Alisa"; person3.lastName = "Ewoods"; person3.passportPrefix = new char[2]; person3.passportPrefix[0] = 'K'; person3.passportPrefix[1] = 'A'; person3.passportSerial = 920012; person3.customerBalance = 16901.05F; // Creating person array - list var personArray = new Person[3]; personArray[0] = person1; personArray[1] = person2; personArray[2] = person3; // Stating count total customers balance float totalUsersBalance = 0.00F; int x; for (x = 0; x <= 2; x++) { if (personArray[x] == null) { break; } totalUsersBalance += personArray[x].customerBalance; } Console.WriteLine("Total customer balance: " + totalUsersBalance); // Hold app Console.ReadLine(); }
public static Person[] ReadFilePersons(string fich) { var sr = new StreamReader(fich); string linha1; linha1= sr.ReadLine(); int contador; contador = int.Parse(linha1); Person[] persons = new Person[contador]; string linha; int i; try { for (i = 0; i < contador; i++) { Person p; linha = sr.ReadLine(); var tipo = Type.GetType(linha); //ConstructorInfo[] info_const1 = tipo.GetConstructors(BindingFlags.NonPublic | BindingFlags.Instance); //p= info_const1[0].Invoke(new object[0]) as Person; p= Activator.CreateInstance(tipo, true) as Person; var infocampos = tipo.GetFields(BindingFlags.NonPublic | BindingFlags.Instance); p.Read(sr); if (infocampos[0].FieldType == typeof(string)) infocampos[0].SetValue(p, "xpto"); persons[i] = p; } } catch (Exception erro) { Console.WriteLine("erro {0} na leitura", erro); } sr.Close(); return persons; }
static void Main(string[] args) { Student S1 = new Student(); Console.WriteLine(S1.ToShortString()); S1.PersonVal = new Person("Sergey", "Polyakov", new DateTime(1995, 4, 9)); S1.StudentEducation = Education.Specialist; S1.GroupNumberVal = 232; S1.ExamsVal = new Exam[4]; S1.TestsVal = new System.Collections.ArrayList(); Console.WriteLine(S1.ToString()); Exam[] buf = new Exam[] { new Exam("Programming", 5, new DateTime(2015, 12, 01)), new Exam("Economics", 5, new DateTime(2015, 12, 11)), new Exam("Math", 5, new DateTime(2015, 12, 14)), new Exam("Foreign language", 4, new DateTime(2015, 12, 20))}; S1.AddExams(buf); Console.WriteLine(S1.ToString()); Person p1 = new Person("Name", "SName", new DateTime(1998, 1, 1)); Person p2 = new Person("Name", "SName", new DateTime(1998, 1, 1)); Console.WriteLine(p1==p2); Console.WriteLine(p1.Equals(p2)); Console.WriteLine(p1.GetHashCode().ToString()+" "+p2.GetHashCode().ToString()); Student S2 = new Student("Ivan", "Ivanov", new DateTime(1994, 4, 5), Education.Bachelor, 432); S2.AddExams(new Exam[] {new Exam("Math", 5, new DateTime(2015,4,30)), new Exam("Biology", 4 ,new DateTime(2015,4,25))}); S2.AddTests(new Test[] { new Test("Philosophy", true, new DateTime(2015, 4, 15)), new Test("Social", true, new DateTime(2015, 4, 10)) }); Console.WriteLine(S2.ToString()); Student S21 = (Student)S2.DeepCopy(); S2.NameVal = "Petr"; S2.SecondNameVal = "Petrov"; Console.WriteLine(S2.ToString()); Console.WriteLine(S21.ToString()); S2.GroupNumberVal = 1000; foreach (Exam Ex in S2.ExamsVal) { if (Ex!=null) Console.WriteLine(Ex.ToString()); } foreach (Test Ts in S2.TestsVal) { if (Ts != null) Console.WriteLine(Ts); } foreach (Exam Ex in S2.ExamsVal) { if ((Ex != null) && (Ex.Mark>3)) Console.WriteLine(Ex.ToString()); } }
static void Main(string[] args) { Person person = new Person(); person.SetId(1); person.FirstName = "Joe"; person.LastName = "Smith"; IFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream("Person.bin", FileMode.Create, FileAccess.Write, FileShare.None); formatter.Serialize(stream, person); stream.Close(); stream = new FileStream("Person.bin", FileMode.Open, FileAccess.Read, FileShare.Read); Person person2 = (Person)formatter.Deserialize(stream); stream.Close(); Person person3 = new Person(); person3.SetId(1); person3.FirstName = "Joe"; person3.LastName = "Smith"; XmlSerializer xmlSerializer = new XmlSerializer(typeof(Person)); StreamWriter streamWriter = new StreamWriter("Person.xml"); xmlSerializer.Serialize(streamWriter, person); XmlSerializer xmlSerializer2 = new XmlSerializer(typeof(Person)); FileStream fs = new FileStream("Person.xml", FileMode.Open); Person person4 = (Person)xmlSerializer2.Deserialize(fs); Person person5 = new Person(); person5.SetId(1); person5.FirstName = "Joe"; person5.LastName = "Smith"; Stream stream2 = new FileStream("Person.json", FileMode.Create); DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Person)); ser.WriteObject(stream2, person); stream2.Close(); Stream stream3 = new FileStream("Person.json", FileMode.Open); DataContractJsonSerializer ser2 = new DataContractJsonSerializer(typeof(Person)); person = (Person)ser2.ReadObject(stream3); stream.Close(); }
public static void SavePersons(Person[] array, string fich) { int contador = 0; foreach (Person p in array) { if (p != null) { contador++; } } var save = new StreamWriter (fich); save.WriteLine(contador); foreach (Person p in array) { if (p != null) { save.WriteLine(p.GetType().FullName); p.SaveFile(save); } } save.Close(); }
private static object getData(Person item) { Thread.Sleep(1000); return "Test Object " + item.Id; }
static void Main(string[] args) { Person[] malta; // criar um instancia q identifica um array de Person malta = new Person[10]; // identifica q malta é um array de 10 malta[0] = new Person("Zé", new DateTime(2005, 1, 1),true); malta[1] = new Student("Manel", new DateTime(2006, 1, 1), 10); malta[2] = new Person("Xico", new DateTime(2002, 1, 1), false); malta[3] = new Teacher("Mário", new DateTime(2002, 1, 1), Teacher.Categoria.assistente); foreach (Person elemento in malta) { if (elemento != null) Console.WriteLine("{0} Idade: {1}", elemento, elemento.Age); } string fich; Console.Write("Indique ficheiro: "); fich = Console.ReadLine(); Person.SavePersons(malta, fich); var malta1 = Person.ReadFilePersons(fich); Console.WriteLine("Leu"); foreach (Person elemento in malta1) { Console.WriteLine(elemento); Console.WriteLine(); } }
static void Main2(string[] args) { Person p1 = new Person("Alice", new DateTime(1980,1,1),true); // p1 é uma <referência para um objecto com a estrutura da classe person int i = p1.Id; p1.Name = "Alice Tomás"; p1.Show(); // chama o objecto show sobre o objecto p1 Console.WriteLine("age{0} é parecido com {1}", p1.Name, p1.Age); Console.WriteLine("número de bonecos {0}", Person.GetNumberCli()); Person p2 = new Person("Bob", new DateTime(1990,1,1)); ; p2.Show(); // chama o objecto show sobre o objecto p2 Console.WriteLine("número de bonecos {0}", Person.GetNumberCli()); }
private static int ReadFilePersons(Person[] array, string fich) { int contador = 0; var sr = new StreamReader (fich); { string line_nome; while ((line_nome = sr.ReadLine()) != null) { string line_data = sr.ReadLine() ; array[contador] = new Person(line_nome, DateTime.Parse(line_data)); contador ++ ; // contador = contador + 1 } sr.Close(); } return contador; }
static void Main5(string[] args) { Person[] malta; // criar um instancia q identifica um array de Person malta = new Person[10]; // identifica q malta é um array de 10 /*int max = 3; // máx pessoas a ler for (int pointer = 0; pointer < max; ++pointer) { malta[pointer] = ObtemNome(); }*/ int max = ReadFilePersons(malta, "Pessoas.txt"); for (int pointer = 0; pointer < max; ++pointer) { Console.WriteLine(malta[pointer].ToString()); } malta[3] = new Student("Zé", new DateTime(2005, 1, 1), 10); foreach (Person elemento in malta) { if (elemento != null) Console.WriteLine("{0} Idade: {1}", elemento, elemento.Age); } int i; string linha1; Console.Write("Introduza número:"); linha1 = Console.ReadLine(); i = int.Parse(linha1); //Console.WriteLine(malta[i].ToString()); Student s = malta [i] as Student; if (s != null) Console.WriteLine("nr_aluno {0} ", s.nr_aluno); else Console.WriteLine("Não é estudante {0} ", malta [i]); //Console.WriteLine("Fim"); }
public static Person ObtemNome() // devolve uma estrutura person { string _name; DateTime _dt_nasc; Console.Write("Introduza o Nome:"); _name=Console.ReadLine(); Console.Write("Introduza a data de nascimento:"); string linha = Console.ReadLine(); _dt_nasc=DateTime.Parse(linha); Person p = new Person(_name, _dt_nasc); return p; }
public virtual object DeepCopy() { Person p = new Person(Name, SecondName, DateOfBorn); return p; }