最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#把數(shù)組中的某個元素取出來放到第一個位置的實現(xiàn)方法

 更新時間:2014年12月04日 14:50:03   投稿:shichen2014  
這篇文章主要介紹了C#把數(shù)組中的某個元素取出來放到第一個位置的實現(xiàn)方法,涉及C#針對數(shù)組的常見操作技巧,非常具有實用價值,需要的朋友可以參考下

本文實例講述了C#把數(shù)組中的某個元素取出來放到第一個位置的實現(xiàn)方法。分享給大家供大家參考。具體分析如下:

如何取出數(shù)組中符合某種條件的元素,然后放在數(shù)組最前面,即索引為0的位置?

思路大致如下:

① 找到符合條件的數(shù)組元素,把之賦值給一個臨時變量temp,并記下該數(shù)組元素的索引位置,假設(shè)是index
② 在源數(shù)組中,從索引為0的數(shù)組元素開始,拷貝index個數(shù)組元素到另外一個目標數(shù)組
③ 把臨時變量temp賦值給目標數(shù)組索引為0的位置

復(fù)制代碼 代碼如下:
public static class ArrHelper
{
        /// <summary>
        /// 對類型為T的數(shù)組進行擴展,把滿足條件的元素移動到數(shù)組的最前面
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="arr">源數(shù)組</param>
        /// <param name="match">lamda表達式</param>
        /// <returns></returns>
        public static bool MoveToFront<T>(this T[] arr, Predicate<T> match)
        {
            //如果數(shù)組的長度為0
            if (arr.Length == 0)
            {
                return false;
            }
            //獲取滿足條件的數(shù)組元素的索引
            var index = Array.FindIndex(arr, match);
            //如果沒有找到滿足條件的數(shù)組元素
            if (index == -1)
            {
                return false;
            }
            //把滿足條件的數(shù)組元素賦值給臨時變量
            var temp = arr[index];
            Array.Copy(arr, 0, arr, 1, index);
            arr[0] = temp;
            return true;
        }
        public static void PrintArray<T>(T[] arr)
        {
            foreach (var item in arr)
            {
                Console.Write(item + " ");
            }
            Console.WriteLine();
        }
}

以上,是針對泛型數(shù)組的擴展,所以可以直接使用數(shù)組實例調(diào)用擴展方法。

復(fù)制代碼 代碼如下:
class Program
{
        static void Main(string[] args)
        {
            int[] intArr = new int[]{1, 2, 3, 4, 5};
            ArrHelper.PrintArray(intArr);
            intArr.MoveToFront(i => i == 3);
            ArrHelper.PrintArray(intArr);
            Console.ReadKey();
        }
}

希望本文所述對大家的C#程序設(shè)計有所幫助。

相關(guān)文章

  • 利用C#開發(fā)瀏覽器擴展的全過程記錄

    利用C#開發(fā)瀏覽器擴展的全過程記錄

    做web開發(fā)的同學(xué),經(jīng)常會用到各種chrome瀏覽器插件,那么我們寄幾怎么開發(fā)一個插件呢(其實是瀏覽器擴展)?這篇文章主要給大家介紹了關(guān)于利用C#開發(fā)瀏覽器擴展的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • 利用C#實現(xiàn)記事本的功能的示例代碼

    利用C#實現(xiàn)記事本的功能的示例代碼

    這篇文章主要為大家詳細介紹了如何利用C#實現(xiàn)簡單的記事本的功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習一下
    2023-12-12
  • winform實現(xiàn)關(guān)閉按鈕失效的兩種方法

    winform實現(xiàn)關(guān)閉按鈕失效的兩種方法

    這篇文章主要介紹了winform實現(xiàn)關(guān)閉按鈕失效的兩種方法,實例分析了WinForm實現(xiàn)關(guān)閉按鈕失效的原理與所涉及的相關(guān)技巧,需要的朋友可以參考下
    2015-09-09
  • 基于C#實現(xiàn)簡單離線注冊碼生成與驗證

    基于C#實現(xiàn)簡單離線注冊碼生成與驗證

    本文使用RSA非對稱加密和Base64簡單地實現(xiàn)離線注冊碼的生成與驗證功能。感興趣的朋友跟著小編一起學(xué)習吧
    2015-09-09
  • ASP.NET C#中Application的用法教程

    ASP.NET C#中Application的用法教程

    這篇文章主要給大家介紹了關(guān)于ASP.NET C#中Application的用法,在介紹Application的用法之前,先給大家介紹了Session的用法供大家參考學(xué)習,文中介紹的非常詳細,需要的朋友們下面跟著小編一起來學(xué)習學(xué)習吧。
    2017-05-05
  • C#中創(chuàng)建統(tǒng)一API接口的實現(xiàn)方案

    C#中創(chuàng)建統(tǒng)一API接口的實現(xiàn)方案

    在 C# 中創(chuàng)建統(tǒng)一 API 接口需要從架構(gòu)設(shè)計、技術(shù)選型和代碼實現(xiàn)等多個層面進行規(guī)劃,本文給大家詳細介紹了實現(xiàn)方案和完整示例代碼,對大家的學(xué)習或工作有一定的幫助,需要的朋友可以參考下
    2025-04-04
  • C#使用Thrift作為RPC框架入門詳細教程

    C#使用Thrift作為RPC框架入門詳細教程

    這篇文件我們講了從0到1使用thrift框架的方法,也講了一些該框架的基本知識,本文將詳細介紹 Thrift 在C#語言下的使用方式,并且提供豐富的實例代碼加以解釋說明,幫助使用者快速構(gòu)建服務(wù),感興趣的朋友一起看看吧
    2021-11-11
  • 基于WPF實現(xiàn)帶蒙版的MessageBox消息提示框

    基于WPF實現(xiàn)帶蒙版的MessageBox消息提示框

    這篇文章主要介紹了如何利用WPF實現(xiàn)帶蒙版的MessageBox消息提示框,文中的示例代碼講解詳細,對我們學(xué)習或工作有一定幫助,需要的可以參考一下
    2022-08-08
  • .Net WInform開發(fā)筆記(五)關(guān)于事件Event

    .Net WInform開發(fā)筆記(五)關(guān)于事件Event

    我前面幾篇博客中提到過.net中的事件與Windows事件的區(qū)別,本文討論的是前者,也就是我們代碼中經(jīng)常用到的Event,感興趣的朋友可以了解下
    2013-01-01
  • 給c#添加SetTimeout和SetInterval函數(shù)

    給c#添加SetTimeout和SetInterval函數(shù)

    Javascript中的SetTimeout和SetInterval函數(shù)很方便,把他們移植到c#中來。
    2008-03-03

最新評論

万载县| 吴堡县| 连州市| 随州市| 增城市| 金平| 乐昌市| 离岛区| 鹤壁市| 通化市| 庆阳市| 阿克陶县| 赣州市| 商城县| 南雄市| 资兴市| 郯城县| 齐齐哈尔市| 新化县| 龙口市| 宁化县| 巴东县| 如皋市| 拜泉县| 镇坪县| 崇义县| 合阳县| 平昌县| 张家港市| 伊通| 常州市| 斗六市| 老河口市| 敦煌市| 长治县| 吴川市| 榆中县| 双鸭山市| 德江县| 绵阳市| 西华县|