# 遍历结构体_C#学习笔记05--枚举/结构体
一.枚舉
當(dāng)變量的取值范圍是固定的幾個(gè), 例如性別--男,女; 英雄類型 -- 法師, 刺客.戰(zhàn)士, 射手等等. 這時(shí)就可以使用枚舉類型, 會(huì)更加簡(jiǎn)潔方便.
1.1.定義:
訪問(wèn)修飾符 enum 枚舉類型名 {成員1,成員2,成員3,... }public enum Days{Mon = 1,Tue,Wed,Thu,Fri,Sat,Sun}1.2.枚舉的使用
//語(yǔ)法格式: 枚舉類型 枚舉變量名 = 枚舉類型.枚舉值:Days date = Days.Sun; Console.WriteLine(date); // 結(jié)果為 : Sun //如果想要得到 成員變量對(duì)應(yīng)的數(shù)字 可以進(jìn)行強(qiáng)制類型轉(zhuǎn)換 如下: Console.WriteLine((int)date); // 結(jié)尾為: 7注意:
類型轉(zhuǎn)換
1.字符串轉(zhuǎn)換枚舉類型
枚舉類型名 枚舉變量名 = (枚舉類型名)Enum.Parse(typeof(枚舉類型名), 字符串);Days date = (Days)Enum.Parse(typeof(Days), Console.ReadLine());
2. 枚舉類型成員轉(zhuǎn)換成字符串
string 變量名 = Enum.GetName(typeof(枚舉類型名), 枚舉變量名);string str = Enum.GetName(typeof(Days), date);
3.枚舉轉(zhuǎn)換為int類型
int 變量名 = (int)枚舉類型名.成員變量;int day = (int)Days.Sat;
4.整型轉(zhuǎn)換為枚舉類型
枚舉類型名 枚舉變量名 = (枚舉類型名)Enum.ToObject(typeof(枚舉類型名), 數(shù)值);Days date1 = (Days)Enum.ToObject(typeof(Days), 1); / Days date2 = (Days)1;
二.結(jié)構(gòu)體
結(jié)構(gòu)體: 存放多個(gè)數(shù)據(jù)類型的容器 (數(shù)據(jù)類型可以不相同)
2.1.定義格式:
訪問(wèn)修飾符 struct 結(jié)構(gòu)體類型名 {訪問(wèn)修飾符 數(shù)據(jù)類型 變量名;訪問(wèn)修飾符 數(shù)據(jù)類型 變量名;... }public enum Gender {M,W } public StudentInfo {public string name;public int age;public Gender sex; }注意:
2.2.結(jié)構(gòu)體的使用
基本操作
說(shuō)明:
2.3.結(jié)構(gòu)體數(shù)組
如上, 創(chuàng)建好結(jié)構(gòu)體之后我們定義了兩個(gè)對(duì)象, 然后用cw輸出; 試想, 如果我們定義的對(duì)象有一百一千個(gè), 當(dāng)我們想要輸出這些對(duì)象的數(shù)據(jù)時(shí)候我們就得打一百一千行代碼, 這樣一來(lái)代碼就會(huì)很繁瑣. 如何優(yōu)化呢? 我們可以用一個(gè)數(shù)組來(lái)存儲(chǔ)定義的各個(gè)對(duì)象, 然后就可以通過(guò)對(duì)數(shù)組的遍歷 僅僅寫一個(gè)for/foreach 來(lái)取得各個(gè)對(duì)象.
注意:
2.4 結(jié)構(gòu)體數(shù)組的排序
例如: 我們有一個(gè)結(jié)構(gòu)體類型學(xué)生的基礎(chǔ)信息, 定義一個(gè)結(jié)構(gòu)體類型的數(shù)組來(lái)存放n個(gè)學(xué)生的信息, 現(xiàn)在想要對(duì)該數(shù)組進(jìn)行一個(gè)排序, 按照學(xué)生年齡的升序進(jìn)行.
=======================================================
思維導(dǎo)圖
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的# 遍历结构体_C#学习笔记05--枚举/结构体的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
                            
                        - 上一篇: oracle 执行带参数的sql语句_当
 - 下一篇: 商检备案查询官网(商检备案查询)