• C#中的List<string>泛型类示例


    在C#代码中使用一系列字符串(strings)并需要为其创建一个列表时,List<string>泛型类是一个用于存储一系列字符串(strings)的极其优秀的解决办法。下面一起有一些List<string>泛型类的示例,一起来看看吧。 

      List示例 

      下面是一个使用C#创建一个新的一系列字符串的列表的示例,利用foreach语句循环使用其每一个字符串。请注意在代码片段的顶部添加所需的命名空间:“using System.Collections.Generic;”,List是该命名空间里的一个泛型类型。 

    List<string>示例代码: 

     1using System;

     2using System.Collections.Generic;

     3

     4class Program

     5{

     6staticvoid Main()

     7    {

     8        List<string> cities =new List<string>(); // List of city names

     9        cities.Add("San Diego");                  // String element 1

    10        cities.Add("Humboldt");                   // 2

    11        cities.Add("Los Angeles");                // 3

    12        cities.Add("Auburn");                     // 4

    13

    14// Write each city string.

    15foreach (string city in cities)

    16        {

    17            Console.WriteLine(city);

    18        }

    19        Console.ReadKey();

    20    }

    21}

    输出: 

    San Diego

    Humboldt

    Los Angeles

    Auburn

      注意代码中的尖括号(angle brackets)。在声明语句中尖括号<和>将string类型围在中间,这意味着List仅能够存储String类型的元素。string类型可以是小写字体的string,也可以使大写字体的String。 

      使用Collection实现初始化示例 

      C#语法允许以一种更加清晰的办法来实现List的初始化。使用collection进行初始化,必须使用大括号{}包围作初始化用的值。下面示例中的注释说明了在执行该程序时编译器所使用的代码。 

    List初始化示例代码: 

     1using System;

     2using System.Collections.Generic;

     3

     4class Program

     5{

     6staticvoid Main()

     7    {

     8        List<string> moths =new List<string>

     9    {

    10"African armyworm",

    11"Mottled pug",

    12"Purple thug",

    13"Short-cloaked moth"

    14    };

    15// The List moth contains four strings.

    16// IL:

    17//

    18// List<string> <>g__initLocal0 = new List<string>();

    19// <>g__initLocal0.Add("African armyworm");

    20//// ... four more Add calls

    21// List<string> moths = <>g__initLocal0;

    22    }

    23}

      解释说明。可以看到字符串列表的初始化编译为调用一系列的Add方法。因此,二者执行起来是相似的。然而,不要超出你的需要来过多的初始化List,因为调用Add方法会增加你的资源消耗。 

      Var示例: 

      下面是一个关于var关键字如何与List<string>一起使用的示例。var是一个隐式关键字,它与使用全类型名称编译的结果是相同的(var是C# 3.0中新增加的一个关键字,在编译器能明确判断变量的类型时,它允许对本地类型进行推断)。 

    使用var关键字的List示例:

     1using System;

     2using System.Collections.Generic;

     3

     4class Program

     5{

     6staticvoid Main()

     7    {

     8        var fish =new List<string>(); // Use var keyword for string List

     9        fish.Add("catfish");           // Add string 1

    10        fish.Add("rainbowfish");       // 2

    11        fish.Add("labyrinth fish");    // 3

    12        fish.Sort();                   // Sort string list alphabetically

    13

    14foreach (string fishSpecies in fish)

    15        {

    16            Console.WriteLine(fishSpecies);

    17        }

    18        Console.ReadKey();

    19    }

    20}

    输出:

    catfish

    labyrinth fish

    rainbowfish

      注意。List<string>的Sort方法默认按照字母顺序对其字符串进行排序。它使用替换的方式实现排序,意味着你不必为排序的结果分配新的存储空间。 

      总结 

      上面是字符串类型的List的一些示例。因为C#语言中设计了泛型类型,这些示例中没有花费较大的装箱与拆箱过程,因此,这里的List与ArrayList相比,在任何情况下其效率都要高一些。在这篇文章里,我们学习了声明并使用collection对字符串类型的List进行初始化,还学习了其Sort方法,最后还有一个使用List作为参数的示例程序。

  • 相关阅读:
    mac上finalShell的安装
    c 字符串与字符串操作
    .net5 MailKit
    c 99乘法表
    element 动态表单加自定义校验
    遇到的问题 vscode 问题
    vue-element-admin eslint 规则查询表
    利用html2canvas 导出网页 (只是用于自己的笔记,如果需要看配置,自行查找插件api)
    git 常用命令
    uniapp中自动打包微信小程序后自动上传代码
  • 原文地址:https://www.cnblogs.com/daban/p/2723942.html
Copyright © 2020-2023  润新知