.NET C#基础:While & do-while

介绍

do-while 和 while 语句通过重复代码块直到满足条件来控制代码执行流。

学习目标

  • 利用 do-while 循环循环循环访问代码块。

  • 实现 while 循环以遍历代码块。

开发人员的先决条件

  • 熟悉使用语句。if

  • 熟练使用和迭代语句。foreach for

  • 写作表达的能力。Boolean

  • 使用类和方法生成随机数的知识。System.RandomRandom.Next()

开始

什么是do-while循环?

只要指定的布尔表达式保持 true,do-while 语句就会运行语句或语句块。由于此表达式在每次循环执行后计算,因此 do-while 循环至少执行一次。

示例:do-while

让我们创建连续生成从 1 到 10 的随机数的代码,直到生成数字 7。数字 7 可以在一次迭代中生成,也可以在多次迭代后生成。

首先,在控制台应用程序中创建一个名为""的静态类文件。将提供的代码片段插入到此文件中。WhileLoop.cs

复制代码
/// <summary>
/// Outputs
/// 2
/// 5
/// 8
/// 2
/// 7
/// </summary>
public static void DoWhileLoopExample()
{
    Random random = new Random();
    int current = 0;

    do
    {
        current = random.Next(1, 11);
        Console.WriteLine(current);
    } while (current != 7);
}

从 main 方法执行代码,如下所示

复制代码
#region Day 5 - While & do-while  
  
WhileLoop.DoWhileLoopExample();  
  
#endregion

控制台输出

复制代码
2  
5  
8  
2  
7

示例:while

该语句将基于布尔表达式进行迭代。为此,请将另一个方法添加到同一个静态类中,如下所示while

复制代码
/// <summary>
/// Outputs
/// 9
/// 7
/// 5
/// Last number: 1
/// </summary>
public static void WhileLoopExample()
{
    Random random = new Random();
    int current = random.Next(1, 11);

    while (current >= 3)
    {
        Console.WriteLine(current);
        current = random.Next(1, 11);
    }
    Console.WriteLine($"Last number: {current}");
}

从 main 方法执行代码,如下所示

复制代码
#region Day 5 - While & do-while  
  
WhileLoop.WhileLoopExample();  
  
#endregion

控制台输出

复制代码
9  
7  
5  
Last number: 1

使用 do-while 继续语句

有时,开发人员需要跳过代码块中的其余代码,然后继续进行下一次迭代。为此,请将另一个方法添加到同一静态类中,如下所示

复制代码
/// <summary>
/// Outputs
/// 5
/// 1
/// 6
/// 7
/// </summary>
public static void ContinueDoWhileLoopExample()
{
    Random random = new Random();
    int current = random.Next(1, 11);

    do
    {
        current = random.Next(1, 11);

        if (current >= 8) continue;

        Console.WriteLine(current);
    } while (current != 7);
}

从 main 方法执行代码,如下所示

复制代码
#region Day 5 - While & do-while  
  
WhileLoop.ContinueDoWhileLoopExample();  
  
#endregion

控制台输出

复制代码
5  
1  
6  
7
相关推荐
金山几座32 分钟前
C#学习记录-类(Class)
开发语言·学习·c#
Detachym1 小时前
InsightFlow 服务配置优化与部署实践
java·spring boot·tomcat·maven·状态模式·jar
y = xⁿ1 小时前
【LeetCodehot100】T23:合并k个升序链表
java·数据结构·链表
流水武qin1 小时前
SpringAI多模态的基本使用
java·spring boot·spring·ai
共享家95271 小时前
Java入门(多态)
java·开发语言
毕设源码-赖学姐1 小时前
【开题答辩全过程】以 基于Java的婚礼策划平台的设计与实现为例,包含答辩的问题和答案
java·开发语言
吾诺2 小时前
Spring Boot--@PathVariable、@RequestParam、@RequestBody
java·spring boot·后端
luanma1509802 小时前
Spring 框架——@Retryable 注解与 @Recover 注解
java·前端·spring
阿Y加油吧2 小时前
力扣打卡——day01
java·算法·leetcode
码路飞2 小时前
Java 25 发了但更让我兴奋的是这个:Spring AI 让 Java 调大模型终于不用手写 HTTP 了
java·人工智能·spring