Type de structure de type numérique (struct type) :
Après avoir étudié les types simples précédents, nous effectuons quelques opérations de données courantes et un traitement de texte, ce qui semble suffisant, mais lorsque nous rencontrons des données complexes types, par exemple, le nom, l'âge, le numéro de téléphone et l'adresse de chaque élève doivent être saisis dans le système de gestion de classe. Si nous le traitons selon les types de données simples que nous avons appris plus tôt, chaque fois que les informations d'un élève sont saisies, elles seront stockées dans 4 variables différentes. Cela entraînera trop de travail, n'est pas intuitif et est facile à confondre.
La structure struct définie dans C/C est utilisée pour rassembler un ensemble d'informations associées et organiser les variables associées en une seule entité. Prenons l'exemple ci-dessus comme analogie. Lorsque je saisis les informations d'un étudiant, je peux postuler pour une « case » (type de structure), et nous mettons son nom, son âge, son numéro de téléphone et son adresse dans la « case » (structure). puis donnez un nom à la boîte, par exemple « La boîte de Zhang San ». Lorsque vous souhaitez afficher ou modifier les informations de Zhang San, il vous suffit de trouver cette boîte et d'appeler les membres à l'intérieur.
C# fait complètement référence au type struct en C/C, donc son utilisation et ses fonctions sont les mêmes.
C#定义Struct类型格式: 访问修饰符 struct 类型名 { 访问修饰副 成员; }
J'explorerai les modificateurs d'accès en détail plus tard et parlerai brièvement de leurs propriétés. C# a cinq modificateurs d'accès : public, privé, protégé, interne et protégé interne. Parmi eux, public n'est soumis à aucune restriction et a un accès partagé. Actuellement, nous utilisons public.
pour attribuer des valeurs aux membres du type de structure. La méthode de requête est la même que C/C, nom de la variable de structure. nom du membre = valeur, comme ci-dessus Dans l'exemple de Zhang San, la valeur peut être attribuée comme ceci : La boîte de Zhang San = 18 ;
J'utilise toujours l'exemple ci-dessus pour écrire un code. , saisissez les informations de 2 élèves, et affichez-les :
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Example { class Program { public struct Student { public string name; public uint age; public ulong tel; public string address; } static void Main(string[] args) { Student Firstperson, Secperson; //定义两个Student 类型的变量也就是申请2个‘箱子’并取了名字 #region 录入第一个学生信息 Console.WriteLine("\t(第一个学生信息)"); Console.WriteLine("输入姓名:"); Firstperson.name = Console.ReadLine(); Console.WriteLine("输入年龄:"); Firstperson.age = uint.Parse(Console.ReadLine()); //强制类型转换 将String 类型转换为uint Console.WriteLine("输入电话号码:"); Firstperson.tel = ulong.Parse(Console.ReadLine()); Console.WriteLine("请输入地址:"); Firstperson.address = Console.ReadLine(); #endregion #region 录入第二个学生信息 Console.WriteLine("\t(第二个学生信息)"); Console.WriteLine("输入姓名:"); Secperson.name = Console.ReadLine(); Console.WriteLine("输入年龄:"); Secperson.age = uint.Parse(Console.ReadLine()); Console.WriteLine("输入电话号码:"); Secperson.tel = ulong.Parse(Console.ReadLine()); //强制类型转换 将String 类型转换为ulong类型 Console.WriteLine("请输入地址:"); Secperson.address = Console.ReadLine(); #endregion #region 输出这两个学生的信息 Console.WriteLine("1.姓名:{0}\t年龄:{1}\t电话:{2}\t地址:{3}",Firstperson.name,Firstperson.age,Firstperson.tel,Firstperson.address); Console.WriteLine("2.姓名:{0}\t年龄:{1}\t电话:{2}\t地址:{3}", Secperson.name, Secperson.age, Secperson.tel, Secperson.address); #endregion } } }
Résultat de sortie :
Lors de l'édition du code, afin de créer le code structure plus claire, j'ai ajouté #region et #enregion pour réduire le code écrit. Cela ressemble à ceci :
Le type de structure n'a aucune restriction sur ses types de membres. peut être identique ou différent, et il n'y a pas de limite sur le nombre de membres à l'intérieur, par exemple, nous pouvons également ajouter le genre du membre char sex ;
public struct Student { public string name; public uint age; public ulong tel; public string address; public char sex; }
Nous pouvons même utiliser le type de structure comme. un membre d'un autre type de structure, ce qui ne pose aucun problème. . Toujours en utilisant l'exemple d'informations sur les étudiants ci-dessus, nous modifions l'adresse du membre en un type de structure, où la structure d'adresse contient la nationalité, la province, la ville et la rue.
class Program { public struct Student { public string name; public uint age; public ulong tel; public struct address { public string nationality; public string 省份; // 变量名可以用汉字 public string 市; public string street; } public char sex; public address Ad; //声明 一个 address类型变量Ad 外部函数通过访问Ad才能访问 address结构内的成员 }
De même, si vous souhaitez attribuer des valeurs aux membres dans la structure d'adresse, utilisez la même méthode
Firstperson.Ad.市 = Console.ReadLine(); // Firstperson.Ad.市 = "成都";都是可以的。
Ce qui précède est C# Learning Diary 09 --- Type de données de contenu de type structure (Struct), pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !