C#中foreach遍历的用法

萌到你眼炸
944次浏览
2021年01月28日 20:07
最佳经验
本文由作者推荐

小学音乐教师总结-菊花台古筝谱

2021年1月28日发(作者:黏人的心动歌词)

C#
中
foreach
遍历的用法

分类:

C#
2012-04-29 13:56 367
人阅读

评论
(1)
收藏

举报

c#
存储
string

foreach
循环用于列举出集 合中所有的元素,
foreach
语句中的表达式由关键字
in
隔开的
两个项组成。
in
右边的项是集合名,
in
左边的项是变量名,
用 来存放该集合中的每个元素。

该循环的运行过程如下:
每一次循环时,
从集 合中取出一个新的元素值。
放到只读变量中去,
如果括号中的整个表达式返回值为
tr ue
,
foreach
块中的语句就能够执行。一旦集合中的
元素都已经被访 问到,整个表达式的值为
false
,控制流程就转入到
foreach
块后 面

的执行语句。

foreach
语句经常与数组一起使用,下面 实例将通过
foreach
语句读取数组的值并进行显
示。

数组的属性:

数组的容量

利用这个属性,我们可以取得数组对象允 许存储的容量值,也就是数组的长度、元素个数
,
这个比较好理解,数组还有其他的属性,比如数组的维数等,
属性的用法比较简单,学会一
种,其他的格式基本一致,这里我们就不 举例了。

当数组的维数、容量较多时,
C#
提供了
foreach
语句,专门用来读取集合
/
数组中的所有元
素,我们把这种功能叫做遍历。语 法书写如下:

遍历数组:
foreach
(
type objName in collection/Array
)

这段语句会逐一检查 数组中的所存储的变量值,并且一一将其取出,其中的
type
是你所要
读取的数组对 象将要存储在
objName
变量的数据类型,而
objName
是定义了一 个
type
类
型的变量名,代表每一次从集合和数组(
collection /Array
)中取得的元素,
collection/Array
则是所要存取的数 组对象。
用这种方法只需写一个
foreach
就可以遍历出除交错数组以外的
所有维数的数组。

注:
objName
的数据类型
type必须与
collection/Array
对象的类型相同或比它大。

下面我们举一个用
foreach
和
for
遍历规则数组的例子,其中涉及到 了一个数组得到维数的
方法,比较
foreach
在一次性遍历规则数组上的优势。< br>

int[,,] a = new int[2, 2, 2] { {{ 1, 2 }, { 3,4}},{{ 5, 6 }, { 7,8}} };//
定义一个
2
行
2
列
2
纵深的
3
维数组< br>a


for (inti = 0; i< gth (0) i++ )
//
用
gth(n)
得到
数组
[0,1,,,n]
上的维数的元素数,
0
代表行,
1
列,
n
代表此数组是
n+1
维


{


for (int j = 0; j < gth(1); j++)


{


for (int z = 0; z < gth(2);z++ )//2
代表得到纵深上的元素
数,如果数组有
n
维 就得写
n
个
for
循环


{


ine(a[i,j,z]);


}


}


}

用
foreach
循环一次性遍历
a
数组


int[,,] a = new int[2, 2, 2] { {{ 1, 2 }, { 3,4}},{{ 5, 6 }, { 7,8}} };//
定
义一个
2
行
2
列
2
纵深的
3
维数组
a

foreach(inti in a)

{

Console .WriteLine (i);

}

这两种代码执行的结果是一样的都是每行一个元素,共
8
行,元素分别是
1 2 3 4 5 6 7 8

下面我们再做个例子,是一个利用
for
和< br>foreach
循环做的存取数组元素的例子,首先提示
用户输入学生的个数,然后把学 生个数作为存储学生姓名的数组
names
的元素个数,采用
for
循环按照 数组的索引
i
从
0
位开始循环输出
“
输入学生姓名
”
的提示,
并把用户输入的学生
姓名按照其在数组的索引方式
names[i ]
存储在
names
数组中,
for
循环次数的最大值
(即 索
引的最大值)通过数组属性
.Length
得到,我们说过容量与索引之间的关系是
index=-1,
本题即
i
的最大值
<,
存储后,提示< br>“
输出学生姓名
”
,再
用
foreach
循环一次性 遍历
names
数组中存储的每个元素(学生的姓名),一个一个的把
它赋值给
name
元素,然后输出到控制台上。

必须注意的是,借助
foreac h
,只能一一取得数组中的元素,并不能利用这种语句改变数组
所存储的元素。


using System;
class Program
{
static void Main()
{

int count;

ine(
输入要登记的学生数


count = (ne());

string[]names = new string[count];

for (inti = 0; i<; i++)

{

ine(
请输入第
{0}
个学生的姓名


names[i] = ne();

}

ine(
已登记的学生如下


foreach (string name in names)

{

ine(

}

y();
}
}
////////////////////////////////

C#
中遍历各类数据集合的方法

分类:

C#
2012-04-29 13:57 300
人阅读

评论
(0)
收藏

举报

c#datasetstringsql

C#
中遍历各类数据集合的方法,这里自己做下总结:


1.
枚举类型


//
遍历枚举类型
Sample
的各个枚举名称


foreach
(
string
sp
in
es(
typeof
(Sample)))
{
(sp);
}

//
遍历枚举类型
Sample
的各个枚举值


foreach
(
string
sp
in
ues(
typeof
(Sample)))
{
(sp);
}

2.
遍历
ArrayList(Queue
、
Stack)
这里以
string
为例,当然
ArrayList
中的元素可以是任何数 据类型,遍历时须确认
ArrayList
中的元素都是同一数据类型。


//
遍历元素为
string
类型的队列


foreach
(
string
text
in
arraylist)
{
(text);
}
此外遍历
Queue
队列和
Stack
堆栈的方式与
ArrayList
基本相同,

都可以使用
foreach
来
循环遍历,只不过一个是先进先出另一个是先进后出罢了 。


m
窗体中的控件


//
遍历寻找主窗体中的控件,并将符合条件的控件从窗体上去除


foreach
(Control ctl
in

this
.Controls)
{

//
获取并判断控件类型或控件名称


if
(e().(

) || (

))

this
.(ctl);
}

ble
哈希表

DictionaryEntry
类需要引用
tions

//
遍历完整哈希表中的键和值


foreach
(DictionaryEntry item
in
hashTable)
{
(

哈希键:

++

哈希值:

+ng());
}

此外还可以单独遍历哈希表中的键或值。


//
只遍历哈希表中的键


foreach
(
string
key
in
)
{
(

哈希键:

+ key);
}


//
只遍历哈希表中的值


foreach
(
string
value
in
hashT
)
{
(

哈希值:

+ value);
}

5.
遍历
DataSet
和
DataTable
中的行和列

小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱


小学音乐教师总结-菊花台古筝谱