黑马程序员技术交流社区

标题: 一个初级的问题 [打印本页]

作者: 苏冉    时间: 2013-3-30 12:01
标题: 一个初级的问题
本帖最后由 苏冉 于 2013-3-30 13:15 编辑

听视频课的时候  看到老师用到
List <string> list=li as List<string>;
请问这是个什么类型?  告诉我名字即可 回来去查资料学习。。。:L

图片5.png (25.46 KB, 下载次数: 11)

图片5.png

作者: 郑丹丹1990    时间: 2013-3-30 12:04
泛型~~~~~~
作者: 管章鹏    时间: 2013-3-30 12:09
这是ArrayList的泛型集合,功能非常强悍,命名空间是System.Collections.Generic
List<string> list=new List<string>();//string代表的是类型,当然你也可以用int 自定义的类型也可以,方正用法很灵活,下面给你一个简单的例子,你看下


下面的代码示例演示 List 泛型类的几个属性和方法。该代码示例使用默认构造函数创建一个容量为 0 的字符串列表。随后显示 Capacity 属性,然后使用 Add 方法添加若干个项。添加的项被列出,Capacity 属性会同 Count 属性一起再次显示,指示已根据需要增加了容量。
该示例使用 Contains 方法测试该列表中是否存在某个项,使用 Insert 方法在列表的中间插入一个新项,然后再次显示列表的内容。
默认的 Item 属性(C# 中的索引器)用于检索项,Remove 方法用于移除前面添加的重复项的第一个实例,然后,该示例再次显示内容。Remove 方法总是移除它所遇到的第一个实例。
该示例使用 TrimExcess 方法减小容量以匹配计数,然后显示 Capacity 和 Count 属性。如果未用容量已经小于总容量的 10%,则列表容量不会进行调整。
最后,代码示例使用 Clear 方法移除列表中的所有项,并显示 Capacity 和 Count 属性。
using System;
using System.Collections.Generic;

public class Example
{
    public static void Main()
    {
        List<string> dinosaurs = new List<string>();

        Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity);

        dinosaurs.Add("Tyrannosaurus");
        dinosaurs.Add("Amargasaurus");
        dinosaurs.Add("Mamenchisaurus");
        dinosaurs.Add("Deinonychus");
        dinosaurs.Add("Compsognathus");

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity);
        Console.WriteLine("Count: {0}", dinosaurs.Count);

        Console.WriteLine("\nContains(\"Deinonychus\"): {0}",
            dinosaurs.Contains("Deinonychus"));

        Console.WriteLine("\nInsert(2, \"Compsognathus\")");
        dinosaurs.Insert(2, "Compsognathus");

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        Console.WriteLine("\ndinosaurs[3]: {0}", dinosaurs[3]);

        Console.WriteLine("\nRemove(\"Compsognathus\")");
        dinosaurs.Remove("Compsognathus");

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        dinosaurs.TrimExcess();
        Console.WriteLine("\nTrimExcess()");
        Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
        Console.WriteLine("Count: {0}", dinosaurs.Count);

        dinosaurs.Clear();
        Console.WriteLine("\nClear()");
        Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
        Console.WriteLine("Count: {0}", dinosaurs.Count);
    }
}
希望能够帮到你!
作者: coolfeiweb    时间: 2013-3-30 12:12
List    容量无限   操作和ArrayList相似   --  类型限定
泛型就是通过 参数化类型 来实现在同一份代码上 操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用。
作者: guobin_lu    时间: 2013-3-30 12:36
泛型  2楼已经说了  用来限制 类型的,  好处 :禁止非法数据
作者: _王涛    时间: 2013-3-30 13:07
泛型,规定集合中必须是字符串




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2