C# 关于列表的一般问题
嗨 我有一个关于C语言中列表的一般性问题。 这是我的密码:C# 关于列表的一般问题,c#,C#,嗨 我有一个关于C语言中列表的一般性问题。 这是我的密码: public List<string> Example() { ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSStorageDriver_FailurePredictStatus"); List<string> output =
public List<string> Example()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSStorageDriver_FailurePredictStatus");
List<string> output = new List<string>();
foreach (ManagementObject queryObj in searcher.Get())
{
output.Add(System.Convert.ToString(queryObj["InstanceName"]));
}
return output;
}
方法“output”不重载1个参数
我希望你能给我解释一下,对不起我的问题,我是一个绝对的初学者
最好的祝愿试试:
Debug.WriteLineExample[1]
编辑:
如果要查找第一个元素,则应使用0,而不是其他人指出的1。应使用:
Example()[0];
方法示例返回一个列表,您可以直接通过索引访问它的元素,类似于mylist[0]。第一个元素的索引是0,而不是C中的1。Bolu的答案很好,只是它应该是0,而不是1-C列表,数组是基于零的。我认为您得到的错误是:方法“示例”没有重载取1个参数而方法“输出”没有重载取1个参数 它表示方法示例不准备接受1个参数 要做到这一点:
Debug.WriteLine(Example()[0]);
因为你说的是第一个输出,所以这里的索引是零。输出是一个列表。由于您已经将示例编码为一个返回列表的方法,所以要访问它,您需要使用带空括号的方法语法来调用它。返回值是列表的一个实例。如果在键入示例后达到小数点,您将在intellisense中看到此对象的成员。其中一个将显示为方括号,如下[]。这是您需要使用的成员,用于访问列表中的任何内容。您将提供的值是以零为基础的,即列表中第一项的值从零开始,然后从零开始增加。因此,要访问列表中的第一项,您可以编写: Debug.WriteLineExample[1] 使用方括号,而不是圆括号。您仍然需要示例中的括号,因为它是一个方法。。。如果将其重新编码为属性:
public List<string> Example
{
get
{
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\WMI",
"SELECT * FROM MSStorageDriver_FailurePredictStatus");
List<string> output = new List<string>();
foreach (ManagementObject queryObj in searcher.Get())
output.Add(System.Convert.ToString(queryObj["InstanceName"]));
return output;
}
}
那么你就不需要那些括号了,可以直接写了
Debug.WriteLineExample[1] 这个怎么样
using System.Linq;
public List<string> Example()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSStorageDriver_FailurePredictStatus");
return searcher.Get().ToList();
}
public void Test()
{
var myList = Example();
var element = myList[0];
}
1也起作用,因为列表中有多个成员我知道列表以0开头,但谢谢!
using System.Linq;
public List<string> Example()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSStorageDriver_FailurePredictStatus");
return searcher.Get().ToList();
}
public void Test()
{
var myList = Example();
var element = myList[0];
}