您的位置:首页 > 编程语言 > C#

C#编程基础(中级)(五)——列表List的创建和使用,操作列表的属性和方法,泛型类,泛型方法

2019-02-25 20:21 866 查看

1.列表List的创建和使用

  • 列表的创建
  1. 使用常规方式创建:
    List<int> Name = new List<type>();
  2. 使用匿名类型创建:
    var Name= new List<type>();
  3. 在创建列表时对其进行初始化 :
    List<type> Name = new List<type>() { 100, 98, 99 };
    var Name = new List<type>() { 100, 98, 99 };

列表可以存储任何类型的数据,在创建列表对象的时候首先要指定你要创建的这个列表是什么类型的(泛型)

  • 向列表中插入数据
    Add();
  • 访问列表中的数据
    类似数组,通过下标的索引访问(索引从0开始)

例如:

class Program
{
static void Main(string[] args)
{
List<int> GodSScores = new List<int>();
GodSScores.Add(100);
GodSScores.Add(99);
Console.WriteLine(GodSScores[0]);
Console.WriteLine(GodSScores[1]);
}
}

输出为

  • 获取列表的长度(容量大小)
    Capacity
  • 获取列表中存储数据的个数
    Count

例如:

class Program
{
static void Main(string[] args)
{
List<int> GodSScores = new List<int>();
GodSScores.Add(100);
GodSScores.Add(99);
int x = GodSScores.Capacity;
int y = GodSScores.Count;
Console.WriteLine(x + " " + y);
}
}

输出为

  • 列表的遍历
    与数组类似
  1. for循环
    for( int i = 0; i < Name.Capacity; i++)
    {

    }
  2. foreach循环
    foreach(type temp in Name)
    {

    }

2.操作列表的属性和方法

  1. Capacity属性获取列表容量大小
  2. Count属性访问元素个数
  3. Add()方法添加元素
  4. Insert(index,value)方法插入元素(向某位置插入元素,其后每个元素的位置均后移一位)
  5. [index]访问元素
  6. RemoveAt(index)方法移除指定位置的元素
  7. IndexOf()方法是从前往后搜索,搜索到满足条件的就停止,取得一个元素所在列表中的索引位置并返回(注意是int类型),如果没有找到指定元素就返回-1
  8. LastIndexOf()方法是从后往前搜索,搜索到满足条件的就停止,取得一个元素所在列表中的索引位置(注意是int类型),如果没有找到指定元素就返回-1
  9. Sort()方法对列表中的元素进行从小到大排序

3.泛型类

  • 泛型:
    通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用。
  • 定义:
    class Name
    {
    private T variable;
    public Name(T parameter1, T parameter2)
    {

    }
    }

注意:
当我们利用泛型类构造的时候,需要指定泛型的类型。
可以设置多个泛型类型。

例如:

class Vary <T>
{
private T a;
private T b;
public Vary(T a,T b)
{
this.a = a;
this.b = b;
}
public string GetSum()
{
return a + " " + b;
}
}

class Program
{
static void Main(string[] args)
{
Vary<int> a = new Vary<int>(55, 66);
//构造时也可以写成:var a = new Vary<int>(55,66);
string b = a.GetSum();
Console.WriteLine(b);
}
}

输出为

4.泛型方法

定义一个方法,这个方法的参数类型可以是不确定的,当调用这个方法的时候再去确定方法的参数类型。

注意:
可以设置多个泛型类型,方法要设成static

例如:

class Program
{
public static string Link<T, T1, t2, A>(T a,T1 b,t2 c,A d)
{
return a + " " + b + " " + c + " " + d;
}
static void Main(string[] args)
{
Console.WriteLine(Link<int, double, string, float>(3, 5.5, "yeah", 6.6f));
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐