Heim  >  Artikel  >  Backend-Entwicklung  >  C#-Lerntagebuch 11 – Datentyp der Aufzählung (enum).

C#-Lerntagebuch 11 – Datentyp der Aufzählung (enum).

黄舟
黄舟Original
2017-01-20 13:46:461141Durchsuche

Was ich zuvor vorgestellt habe, sind alle Werttypen. Nachdem ich so viel geschrieben habe, werde ich zusammenfassen, was ein Werttyp ist. Vereinfacht gesagt speichern Variablen dieses Typs direkt den enthaltenen Wert. Hier vergleichen wir es mit der Zeichenfolge in der C-Sprache: char ch[6] = „HC666“ Der Lehrer sagte, dass ch tatsächlich verwendet wird, um auf die Adresse von „HC666“ zu verweisen, und der Zugriff auf die Daten erfolgt über die Zugriffsadresse. Das Gleiche gilt für Zeichenfolgen, sodass die Zeichenfolge String in C# ein Referenztyp und kein Werttyp ist. . Dies ist beim Strukturtyp nicht der Fall. Der variable Speicherinhalt wird durch direkte Zuweisung geändert, es handelt sich also um einen Werttyp.

Werttyp-Aufzählungstyp (Enum):

Aufzählung (Enum): Es stellt tatsächlich ein leicht zu merkendes Symbol für eine Reihe logisch untrennbarer Ganzzahlwerte dar. Es ist zum Beispiel Sonntag und ich habe eine Kinokarte gekauft, um einen Film anzusehen. Die Sitzplatznummer sah gut aus – Nr. 66. Ich habe den Sitzplatz anhand der Nummer gefunden, und es war ein guter Sitzplatz – Nr. 2 Reihe und 5. Reihe, also habe ich den Film glücklich zu Ende gesehen. Tatsächlich wird die Zahl 66 im Vorführraum, in dem ich mich befinde, in Zeile 2 und Spalte 5 widergespiegelt. Dies wird als Aufzählung bezeichnet.

Deklarieren Sie eine Variable vom Typ Enum:

enum   变量名
                   {
                   标识符列表     
            } ;


Hinweis:

In der Bezeichnerliste zwischen Elementen und Elementen Wird in Intervallen verwendet , durch Kommas getrennt;

Jedes Symbol in der Aufzählungsliste stellt einen ganzzahligen Wert dar, der größer als das vorherige Symbol ist. Standardmäßig stellt das erste Aufzählungssymbol natürlich 0 dar >

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
  
namespace Test  
{  
    class Program  
    {  
        //定义 enum 类型 以0开始递增  
        enum weekday  
            {  
                Sun, Mon, tue, Wed, thu, Fri, Sat    //若要改变默认值只需  (Sun = 2, Mon, tue, Wed, thu, Fri, Sat)以2开始递增+1  
            };  
  
        static void Main(string[] args)  
        {  
            weekday wek;  
            Console.WriteLine("输入0~6一个数字: ");  
            int i = int.Parse(Console.ReadLine());  
  
            wek = (weekday)i;     //强制类型转换,将int类型转化为 weekday 类型  
  
            Console.WriteLine("{0} 是 {1}", i, wek);  
  
        }  
    }  
}
Ich gebe eine 0 ein:

C#-Lerntagebuch 11 – Datentyp der Aufzählung (enum).

Auf die implizite Konvertierung und Anzeige erzwungener Typkonvertierungen, die im Code erscheinen, werde ich später noch eingehen in Conversion , daher werde ich sie jetzt nicht vorstellen.

Vergleich von Strukturtyp (Struct) und Aufzählungstyp (Enum):

Ich habe einen Klassenkameraden, der den Unterschied zwischen Strukturtyp und Aufzählungstyp immer nicht erkennen kann . , manchmal schreibe ich Fehlercodes wie diesen:

enum  wek
{
     int   a,b,c;
   string  d,e,f;
}

Um die oben genannten Fehler zu vermeiden, werde ich hier über die Unterschiede zwischen ihnen sprechen: Als ich über den Strukturtyp sprach, habe ich bereits erwähnt, dass die darin enthaltenen Datentypen von mehreren verschiedenen Typen sein können. Mit anderen Worten, der Strukturtyp ist eine Reihe neuer Typen, die aus verschiedenen Datentypen bestehen Variable ist Die Werte jedes Mitglieds werden kombiniert. Zum Beispiel:

  Struct   wek
{
      public  int   a  = 1;
     public  int   b = 2;
}
Bestimmen Sie eine Variable wek w; Zu diesem Zeitpunkt kann w verwendet werden, um darzustellen, dass der Wert von a 1 (w.a) ist, oder es kann auch darstellen, dass der Wert von b ist 2 (w.b)

Aber der Aufzählungstyp ist unterschiedlich. Eine Variable vom Aufzählungstyp kann nur zu einem bestimmten Zeitpunkt den Wert eines bestimmten Elements in der Aufzählungsliste annehmen. Zum Beispiel: im Aufzählungsprogramm I Wie ich zuvor geschrieben habe, kann wek nur zu einem bestimmten Zeitpunkt den Wert eines bestimmten Elements in der Aufzählungsliste annehmen. Es kann jedoch nicht sowohl Sun als auch Mon gleichzeitig darstellen.

wek = ( Wochentag) 2; Zu diesem Zeitpunkt kann wek nur Di und nichts anderes darstellen.

Das Obige ist der Inhalt des Aufzählungstyps (Enum) in C# Learning Diary 11---Datentypen. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.org). .php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn