翼度科技»论坛 编程开发 .net 查看内容

C# Break 和 Continue 语句以及数组详解

8

主题

8

帖子

24

积分

新手上路

Rank: 1

积分
24
C# Break

它被用于“跳出” switch 语句。
break 语句也可用于跳出循环。
以下示例在 i 等于 4 时跳出循环:
示例:
  1. for (int i = 0; i < 10; i++)
  2. {
  3.   if (i == 4)
  4.   {
  5.     break;
  6.   }
  7.   Console.WriteLine(i);
  8. }
复制代码
C# Continue

continue 语句在循环中发生特定条件时中断一次迭代,并继续进行下一次迭代。
以下示例跳过了值为 4 的情况:
示例
  1. for (int i = 0; i < 10; i++)
  2. {
  3.   if (i == 4)
  4.   {
  5.     continue;
  6.   }
  7.   Console.WriteLine(i);
  8. }
复制代码
在 While 循环中使用 Break 和 Continue
您也可以在 while 循环中使用 break 和 continue:
Break 示例
  1. int i = 0;
  2. while (i < 10)
  3. {
  4.   Console.WriteLine(i);
  5.   i++;
  6.   if (i == 4)
  7.   {
  8.     break;
  9.   }
  10. }
复制代码
Continue 示例
  1. int i = 0;
  2. while (i < 10)
  3. {
  4.   if (i == 4)
  5.   {
  6.     i++;
  7.     continue;
  8.   }
  9.   Console.WriteLine(i);
  10.   i++;
  11. }
复制代码
C# Arrays

创建数组
数组用于在单个变量中存储多个值,而不是为每个值声明单独的变量。
要声明数组,请使用方括号定义变量类型:
  1. string[] cars;
复制代码
我们现在声明了一个变量,该变量持有一个字符串数组。
要向其中插入值,我们可以使用数组字面量 - 将值放在花括号内,用逗号分隔:
  1. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
复制代码
要创建一个整数数组,您可以编写:
  1. int[] myNum = {10, 20, 30, 40};
复制代码
访问数组元素
通过引用索引号来访问数组元素。
此语句访问 cars 中第一个元素的值:
  1. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
  2. Console.WriteLine(cars[0]);
  3. // 输出 Volvo
复制代码
注意:数组索引从 0 开始:[0] 是第一个元素。[1] 是第二个元素,以此类推。
更改数组元素
要更改特定元素的值,请引用索引号:
  1. cars[0] = "Opel";
复制代码
  1. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
  2. cars[0] = "Opel";
  3. Console.WriteLine(cars[0]);
  4. // 现在输出 Opel 而不是 Volvo
复制代码
数组长度
要了解数组有多少个元素,请使用 Length 属性:
  1. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
  2. Console.WriteLine(cars.Length);
  3. // 输出 4
复制代码
创建数组的其他方法
如果您熟悉 C#,可能已经看到使用 new 关键字创建的数组,而且可能还看到具有指定大小的数组。在 C# 中,有不同的创建数组的方法:
  1. // 创建包含四个元素的数组,并稍后添加值
  2. string[] cars = new string[4];
  3. // 创建包含四个元素的数组并立即添加值
  4. string[] cars = new string[4] {"Volvo", "BMW", "Ford", "Mazda"};
  5. // 创建四个元素的数组,立即添加值,而不指定大小
  6. string[] cars = new string[] {"Volvo", "BMW", "Ford", "Mazda"};
  7. // 创建包含四个元素的数组,省略 new 关键字,并且不指定大小
  8. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
复制代码
由您选择使用哪种选项,经常使用最后一种选项,因为它更快速且更易读
但是,请注意,如果您声明数组并稍后初始化它,您必须使用 new 关键字:
  1. // 声明一个数组
  2. string[] cars;
  3. // 使用 new 添加值
  4. cars = new string[] {"Volvo", "BMW", "Ford"};
  5. // 不使用 new 添加值(这将导致错误)
  6. cars = {"Volvo", "BMW", "Ford"};
复制代码
C# Loop Through Arrays

循环遍历数组
您可以使用 for 循环遍历数组元素,并使用 Length 属性指定循环应运行多少次。
以下示例输出 cars 数组中的所有元素:
示例:
  1. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
  2. for (int i = 0; i < cars.Length; i++)
  3. {
  4.   Console.WriteLine(cars[i]);
  5. }
复制代码
foreach 循环
还有一个专门用于遍历数组元素的 foreach 循环:
语法
  1. foreach (type variableName in arrayName)
  2. {
  3.   // 要执行的代码块
  4. }
复制代码
以下示例使用 foreach 循环输出 cars 数组中的所有元素:
示例
  1. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
  2. foreach (string i in cars)
  3. {
  4.   Console.WriteLine(i);
  5. }
复制代码
上面的示例可以这样理解:对于数组中的每个字符串元素(称为 i - 如索引),打印出 i 的值。
如果您比较 for 循环和 foreach 循环,您会发现 foreach 方法更容易编写,不需要计数器(使用 Length 属性),而且更易读。
C# Sort Arrays

排序数组
有许多可用的数组方法,例如 Sort(),它可以按字母顺序或升序对数组进行排序:
示例:
  1. // 对字符串进行排序
  2. string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
  3. Array.Sort(cars);
  4. foreach (string i in cars)
  5. {
  6.   Console.WriteLine(i);
  7. }
  8. // 对整数进行排序
  9. int[] myNumbers = {5, 1, 8, 9};
  10. Array.Sort(myNumbers);
  11. foreach (int i in myNumbers)
  12. {
  13.   Console.WriteLine(i);
  14. }
复制代码
System.Linq 命名空间
其他有用的数组方法,如 Min、Max 和 Sum,可以在 System.Linq 命名空间中找到:
示例
  1. using System;
  2. using System.Linq;
  3. namespace MyApplication
  4. {
  5.   class Program
  6.   {
  7.     static void Main(string[] args)
  8.     {
  9.       int[] myNumbers = {5, 1, 8, 9};
  10.       Console.WriteLine(myNumbers.Max());  // 返回最大值
  11.       Console.WriteLine(myNumbers.Min());  // 返回最小值
  12.       Console.WriteLine(myNumbers.Sum());  // 返回元素的和
  13.     }
  14.   }
  15. }
复制代码
C# Multidimensional Arrays

多维数组
如果您想将数据存储为表格形式,比如具有行和列的表格,您需要了解多维数组。
多维数组基本上就是数组的数组。
数组可以有任意数量的维度。最常见的是二维数组(2D)。
二维数组
要创建一个二维数组,请在每个数组中添加自己的一组花括号,并在方括号内插入逗号(,):
示例:
  1. int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
复制代码
好知道:单个逗号 [,] 指定数组是二维的。三维数组将有两个逗号:int[,,]。
现在,numbers 是一个包含两个数组的数组。第一个数组元素包含三个元素:1、4 和 2,而第二个数组元素包含 3、6 和 8。为了可视化,可以将该数组看作是一个带有行和列的表格:
访问二维数组的元素
要访问二维数组的元素,必须指定两个索引:一个用于数组,一个用于该数组中的元素。或者更好地说,考虑到表格的可视化;一个用于行,一个用于列(见下面的示例)。
此语句访问了 numbers 数组中第一行(0)和第三列(2)中元素的值:
示例
  1. int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
  2. Console.WriteLine(numbers[0, 2]);  // 输出 2
复制代码
记住:数组索引从 0 开始:[0] 是第一个元素。[1] 是第二个元素,以此类推。
更改二维数组的元素
您还可以更改元素的值。
以下示例将更改第一行(0)和第一列(0)中元素的值:
示例
  1. int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
  2. numbers[0, 0] = 5;  // 更改值为 5
  3. Console.WriteLine(numbers[0, 0]); // 输出 5 而不是 1
复制代码
循环遍历二维数组
您可以使用 foreach 循环轻松遍历二维数组的元素:
示例
  1. int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
  2. foreach (int i in numbers)
  3. {
  4.   Console.WriteLine(i);
  5. }
复制代码
您还可以使用 for 循环。对于多维数组,您需要为数组的每个维度使用一个循环。
还要注意,我们必须使用 GetLength() 而不是 Length 来指定循环应该运行多少次:
示例
  1. int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
  2. for (int i = 0; i < numbers.GetLength(0); i++)
  3. {
  4.   for (int j = 0; j < numbers.GetLength(1); j++)
  5.   {
  6.     Console.WriteLine(numbers[i, j]);
  7.   }
  8. }
复制代码
最后

为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注

来源:https://www.cnblogs.com/xiaowange/p/17983454
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具