当前位置:  开发笔记 > 编程语言 > 正文

并非所有代码路径都返回一个值for循环

如何解决《并非所有代码路径都返回一个值for循环》经验,为你挑选了1个好方法。



1> Dmitry Byche..:

如果users数组,则不返回任何值.

string[] users = File.ReadLines("Username_Passwords").ToArray();

// if users is empty, users.Length == 0 and the loop isn't entered
for (int i = 0; i < users.Length; i++) 
{
   ...
}  

// no value is returned 

return 0; // <- suggested amendment

可能,你必须return 0;在循环下面添加

作为进一步的改进,您可以使用Linq重写该方法(1如果文件包含任何具有所需用户名密码的记录,0则返回),否则:

public int loginCheck() {
  return File
    .ReadLines("Username_Passwords")
    .Select(line => line.Split('_'))
    .Any(items => items.Length >= 2 && 
                  items[0] == _username &&
                  items[1] == _password) 
   ? 1
   : 0;
}

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有