gpt4 book ai didi

c# - 初学者的 bool 程序说明

转载 作者:行者123 更新时间:2023-11-30 23:16:41 26 4
gpt4 key购买 nike

考虑以下程序:

using System;

class BooleanType
{
static void Main()
{
bool male = false;

Random random = new Random();
male = Convert.ToBoolean(random.Next(0, 2));

if (male)
{
Console.WriteLine("We will use name John");
} else
{
Console.WriteLine("We will use name Victoria");
}
}
}

问题1.为什么bool male = false;这行初始化为false? 这对我来说似乎无关紧要,因为程序稍后会决定它是对还是错。

问题 2. Random random = new Random(); 为什么要将它初始化为 new Random()Random random 创建 random 类型的变量 random?

最佳答案

问题 1:您是对的,这是一个冗余初始化程序,因为几行之后几乎立即设置了该值。事实上,您可以通过组合声明和初始化来稍微简化代码:

bool male = Convert.ToBoolean(random.Next(0, 2));

代码可能看起来像这样的原因之一是因为 C# 要求所有变量在使用前必须初始化,而编写代码的人习惯于初始化所有内容。来自official docs :

Local variables in C# must be initialized before they are used.

问题 2:Random 类型不是 vlue 类型,它是引用类型。这意味着引用类型变量的默认值始终为 null。换句话说,它什么都不是,它不存在,如果你尝试使用它,你会得到一个异常。因此,您必须通过使用 new 创建类的实例来初始化它运营商。

关于c# - 初学者的 bool 程序说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41905842/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com