一周学会C#(语句三)

一周学会C#(语句三)

C#才鸟(QQ:249178521

9.for语句

·       for 语句

w       for块中声明的变量是局部的,只在for块中有效

w       可以省略for语句中的任何一部分

for (int digit = 0; digit != 10; digit++)

{

    Console.Write("{0} ", digit);

}

//屏幕上显示0 1 2 3 4 5 6 7 8 9

for块中声明的变量只在for块中有效。例如:

     for (int digit = 0; digit != 10; digit++)

   { ... }

   Console.WriteLine(digit); //错误,digit只在for块中有效

可以通过逗号在for语句中声明多个变量和多个变化语句:

   for (int i = 0, j = 0; i + j < 20; i++, j++)

   { ... }

10.foreach

·       来源于shell, VB, PERL

w       用于任一集合,包括数组

using System;

sealed class Foreach

{

    static void Main (string[] args)

    {

        foreach (string arg in args)

        {

            Console.Write("{0} ", arg);

        }

        Console.WriteLine();

    }

}

把以上程序在windows命令行进行编译:C:/Sharp>csc Foreach.cs

然后键入:C:/Sharp>Foreach 0 1 2 3 4 5 6 7 8 9

屏幕上显示0 1 2 3 4 5 6 7 8 9

foreach用来遍历集合或数组中的元素。

11.foreach的几点注意

·        foreach ( 类型 标识符 in 表达式 )

w       类型和标识符声明一个循环变量

w       循环变量隐含为readonly, 不能有ref out 修饰

w        表达式是可列举的集合

sealed class ForeachTranslation

{

    static void Example(MyWibbleCollection wibbles)

    {

        MyEnumerator pos = wibbles.GetEnumerator();

        while (pos.MoveNext())

        {

            Wibble current = pos.Current;

            Console.Write("{0} ", current);

        }

    }

}

集合类型的定义规则:(假设集合的名字是C

C必须定义一公有函数GetEnumerator(),该函数的返回值是一结构类型或是一类类型或是一接口类型(假设返回值的名字是E;

返回值E的定义规则:

ü        E包含一公有函数MoveNext(),用来使E指向集合中的下一个元素,返回值的类型是bool

ü        E包含一公有属性Current,用来读取当前值。这个属性的类型是集合元素的类型。

12.break/continue

break用来结束一个循环,continue用来重新启动一个循环。

13.找错

{

    for (int i = 0; i != 12; i++)                       1

    {

        ...

    }

    int i = 0;

}

 

for (int i = 0, i == 12, i++)                           2

{

    ...

}

 

foreach (int i in array)                                 3

{

    i++;

}

1个程序的错误:不能在一个父块和一个子块中声明两个相同名字的变量

2个程序的错误:不是使用逗号分割for语句的三个部分,而应使用分号。

for语句的判断条件应为逻辑语句。

3个程序的错误:foreach的循环变量是只读的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值