我对C#语言相当陌生,并且在不久前编写代码时也不知道。当我在循环编写时,我也发现问自己我是否明确需要检查是否需要我的while条件,让我们以下面的代码为例。
while (_myList.Count > 0)
{
// do some work
}
如果之前编写的代码(由其他开发人员提供),我看到他们做过类似的事情......
if (_list.Count > 0)
{
while (_myList.Count > 0)
{
// do some work
}
}
这是最好的做法,我甚至需要这样做吗?如果是这样,为什么......有人可以对这个话题有所启发,让我知道什么是最好的?感谢。
答案 0 :(得分:1)
您不必指定if:
if (_list.Count > 0)
while循环
什么是while循环:接受一个参数并比较剩下的东西 从操作员到右边。并返回一个布尔值(true或 假)只要while得到一个真值就会继续循环。
如果强>
if if statment做什么:正在进行争论并比较剩下的 从操作员到右边。并返回一个布尔值(true或 false)只要if得到一个true它就会继续运行if代码块中的代码。
<强>通知:强>
if (_list.Count > 0) // checking for _list
{
while (_myList.Count > 0) // checking for _myList
{
}
}
在示例中,您展示了&#34;其他开发者&#34;你检查不同的情况,所以在这种情况下,如果你不想在_list.Count&gt;运行te循环时检查_list.Count是有用的。 0.
<强>结论强>
当你在if和wile中检查同一个列表时,不要这样做。
可以执行:如果您只想在特定条件或可能的例外情况下运行wile。
答案 1 :(得分:0)
在这种情况下,您不需要添加if
。
在输入while
之前,将评估条件,如果&lt; = 0,则不进行迭代。
您的示例中提醒您_list
和my_list
不是同一个对象。
答案 2 :(得分:0)
第二个代码示例没用。如果列表计数为0或更小,则不会执行while。
但是,您必须检查,如果_myList
为空,可能是这样的:
if (_myList == null)
//error handling here
如果_myList
确实为空,那么您的代码示例中都会有NullReferenceException
。