【程式設計-C#】Array陣列的操作 Posted by wells Categories 程式設計 Date 2016 年 11 月 17 日 Comments 0 comment 陣列的排序 Array.Sort() 方法 可用來對指定的一維陣列物件由小而大做遞增排序。 語法1:將一維陣列物件中的元素做由小到大排序 :將一維陣列物件中的元素做由小到大排序 Array.Sort(陣列物件); 語法2: 用來將 陣列物件1 中的元素做由小到大排序, 且 陣列物件2 的元素會隨著 陣列物件1 的 索引位置跟著做排序的動作。 Array.Sort(陣列物件1, 陣列物件2); 陣列的反轉 Array.Reverse() 方法 用來反轉整個一維陣列的順序。 上例用Array.Sort() 方法對指定陣列由小而大遞增排序。 若希望改由大而小作遞減排序,需再將已做完遞增排序 的陣列再用 Array.Reverse() 方法即可將陣列由大而小 作遞減排序。 Array.Reverse() 語法: Array.Reverse(陣列物件); [例] 欲對陣列名稱avg做由大而小遞減排序,寫法: Array.Sort(avg); Array.Reverse(avg); 若同時有兩個相關陣列 name 和 avg,若以 avg 陣列 為基準由大而小做遞減排序,相關陣列需要同時 ,相關陣列需要同時反轉, 寫法: Array.Sort(avg,name); Array.Reverse(avg); Array.Reverse(name); 陣列的搜尋 .NET Framework 類別程式庫的 Array 類別提供 1. Array.IndexOf()方法 2. Array. BinarySearch() 方法 用來搜尋某個資料是否在陣列物件中。 1. Array.IndexOf()方法 使用 Array.IndexOf 可用來搜尋陣列中是否有相符 資料。 若有找到,則會傳回該陣列元素的註標值。 若沒有找到,會傳回-1。 語法: Array.IndexOf(陣列名稱 ,查詢資料 [ ,起始註標] [ ,查詢距離] ); [例] 假設字串陣列 name 中有 {"Jack","Tom","Fred","Mary","Lucy", "Jane" } 共六個陣列元素,觀察下列各陳述式輸出結果: Array.IndexOf(name,”Tom”); [結果] 由註標0開始找起,傳回值為1。 Array.IndexOf(name, ”Tom”, 3) ; [結果] 由註標3開始找起,傳回值為-1。 若str1=”Lucy” , start=1, offset=2 Array.IndexOf(name, str1, start, offset); [結果] 由註標1開始往下找2個陣列元素的內容是否 有 ”Lucy” 字串。傳回值為-1。 2. Array.BinarySearch()方法 - 用來搜尋陣列中的資料,陣列未經排序 ,陣列未經排序,每次 搜尋資料都由最前面開始,資料量大時,愈後 面的資料查詢所花費的時間愈多,資料平均搜 尋時間不平均。 - 為不管資料前後次序,使得資料平均搜尋時間都 差不多,在 .NET Framework 類別程式庫另提供 此二分化搜尋方法來搜尋資料是否在陣列中。 - 此方法使用前陣列 才可使用 適用於資料量大的陣列。 語法:Array.BinarySearch(陣列名稱, 查詢資料); 陣列的拷貝 將某個陣列複製給另一個陣列時,可用 Array.Copy() 方法進行拷貝陣列。 語法: Array.Copy (srcAry , srcIndex , dstAry , dstIndex , length ); srcAry :來源陣列即被拷貝的陣列。 srcIndex:代表 srcAry 來源陣列的註標,由指定的註標開始複製。 dstAry :接收資料的目的陣列。 dstIndex:代表 dstAry 目的陣列的註標,由指定的註標開始儲存。 length :表示要複製的陣列元素個數。 陣列的清除 當需要將某個陣列中指定範圍內的陣列元素的內容 清除,可透過 Array.Clear() 方法。語法: Array.Clear(aryname, startindex, length); 【例1】將 myary 陣列中,註標為 3~4 陣列元素的內容 清除, 寫法: Array.Clear(myary, 3, 2); 【例2】 將 myary 陣列中所有陣列元素的內容清除, 假設該 陣列共有六個陣列元素。寫法: Array.Clear(myary, 0, 6); 分享此文:FacebookX請按讚:喜歡 正在載入... 相關 Share: wells Previous post JavaScript 全栈工程师培训教程 - 阮一峰的网络日志 2016 年 11 月 17 日 Next post 【DesignSpark Mechnical】輸出STL檔(切片軟體的輸入格式) 2016 年 11 月 18 日 You may also like 【Python】每天領蝦幣 14 11 月, 2022 username = ‘你的蝦皮帳號’ password = ‘密 … 分享此文:FacebookX請按讚:喜歡 正在載入... 【ESP 8266】ESP晶片在Arduino上的開發編譯環境設定 21 4 月, 2022 第一步 設定額外的開發板管理網址 填入: http://arduino.esp8 … 分享此文:FacebookX請按讚:喜歡 正在載入... Python學習資料 13 3 月, 2022 程式設計語言 Python 程式設計 Python 入門教學課程 Book: P … 分享此文:FacebookX請按讚:喜歡 正在載入...