• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#了解如何使用泛型列表类型管理数据集合

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

创建列表

1、首先须注意是否添加了所需要引用的项:
using System.Collections.Generic;
2、以“var names = new List< string> { “Peter”, “Ana”, “Felipe” };”语句为例,语句需满足:var+列表名=new List<列表集合的类型> {列表集合}。
3、该列表可进行扩大及收缩。
4、创建的集合使用 List 类型。 此类型存储一系列元素。 元素类型是在尖括号内指定。
例:
var names = new List< string> { “Peter”, “Ana”, “Felipe” };
foreach (var name in names)
{
Console.WriteLine( $ “Hello {name.ToUpper()}!”);
}
Console.WriteLine();
names.Add(“Maria”);
names.Add(“Bill”);
names.Remove(“Ana”);
foreach (var name in names)
{
Console.WriteLine($“Hello {name.ToUpper()}!”);
}

foreach循环的运用

注意:在 foreach 循环中,如果要输出数组中的元素,不需要使用数组中的下标,直接输出变量名即可。
foreach 语句仅能用于数组、字符串或集合类数据类型。

foreach循环格式:
foreach(数据类型 变量名 in 数组名)
{
//语句块;
}

列表长度的查询

可以使用 Count 属性确定列表长度。
例:
Console.WriteLine($“The list has {names.Count} people in it”);
其中{names.Count}输出的便是names列表中的集合个数即列表长度。

搜索列表并进行排序

列表的搜索

此时便涉及到搜索列表语句,IndexOf 方法可搜索项,并返回此项的索引。
例:
var index = names.IndexOf(“Felipe”);
if (index != -1)
Console.WriteLine($“The name {names[index]} is at index {index}”);

var notFound = names.IndexOf(“Not Found”);
Console.WriteLine($“When an item is not found, IndexOf returns {notFound}”);
该语句会从names列表中查找是否包含“Felipe”这一项,若无,则索引为 -1,表明找不到相应项。

列表的排序

例:
names.Sort();
foreach (var name in names)
{
Console.WriteLine($“Hello {name.ToUpper()}!”);
}
Sort 方法按正常顺序(按字母顺序,如果是字符串的话)对列表中的所有项进行排序。

其他列表(以整数列表为例)

例:
var fibonacciNumbers = new List< int> {1, 1};
这会创建一个整数列表,并将头两个整数设置为值 1

*斐波那契数列

斐波纳契数列,一串以两个 1 开头的数字。 斐波那契数列中的每个数字都是前两个数字之和。
var fibonacciNumbers = new List< int> {1, 1};
var previous = fibonacciNumbers[fibonacciNumbers.Count - 1];
var previous2 = fibonacciNumbers[fibonacciNumbers.Count - 2];

fibonacciNumbers.Add(previous + previous2);

foreach(var item in fibonacciNumbers)
Console.WriteLine(item);
运行结果如图:


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
一个小C#窗体程序发布时间:2022-07-14
下一篇:
c# PDF转jpg发布时间:2022-07-14
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap