我怎样才能使它不是一个循环?
我怎样才能使它不是一个循环?
{
ManagementObjectSearcher Vquery = new ManagementObjectSearcher("SELECT * FROM Win32_VideoController");
ManagementObjectCollection Vcoll = Vquery.Get();
foreach (ManagementObject mo in Vcoll)
{
System.Diagnostics.Process.Start("http://www.google.com/search?hl=en&q=" + mo["name"].ToString());
}
how can i make this NOT a loop?
{
ManagementObjectSearcher Vquery = new ManagementObjectSearcher("SELECT * FROM Win32_VideoController");
ManagementObjectCollection Vcoll = Vquery.Get();
foreach (ManagementObject mo in Vcoll)
{
System.Diagnostics.Process.Start("http://www.google.com/search?hl=en&q=" + mo["name"].ToString());
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这是一个避免使用 foreach 的非常愚蠢的代码:
但是,如果问题是打开多个页面,我更喜欢在 foreach 中进行简单的中断:
Here's a very stupid code to avoid foreach:
But, if the problem is opening multiple pages, I'd prefer a simple break in the foreach:
给你。
Here you are.
有几种(相当无意义的)方法涉及列表和方法,例如
ForEach
- 或者可能是Select
,但您在这里并没有解决问题。只需使用循环即可。它完美地表达了您正在做的事情。一种古怪的方法(我不在这里推荐这种方法):
在我看来,不是改进。
There are a few (fairly pointless) ways involving lists and methods like
ForEach
- or possiblySelect
, but you aren't solving a problem here. Just use the loop. It expresses perfectly what you are doing.One hacky way (I don't recommmend this here):
not an improvement IMO.
常见的一句台词是:
当然 ForEach 内部有自己的循环。
A common one-liner is:
Of course ForEach has its own loop inside.
如果您想要完成的只是不打开页面两次,那么使用“distinct”:
If all you want to accomplish is not opening pages twice, then use "distinct":