C#从列表中获取字符串

时间:2013-03-04 00:44:59

标签: c# string list

我正在尝试从c#中的列表中获取字符串,但无法找到方法。继承我的代码

public class CurrentCondition
{
    public string cloudcover { get; set; }
    public string humidity { get; set; }
    public string observation_time { get; set; }
    public string precipMM { get; set; }
    public string pressure { get; set; }
    public string temp_C { get; set; }
    public string temp_F { get; set; }
    public string visibility { get; set; }
    public string weatherCode { get; set; }
    public List<WeatherDesc> weatherDesc { get; set; }
    public List<WeatherIconUrl> weatherIconUrl { get; set; }
    public string winddir16Point { get; set; }
    public string winddirDegree { get; set; }
    public string windspeedKmph { get; set; }
    public string windspeedMiles { get; set; }
}
    public class Data
{
    public List<CurrentCondition> current_condition { get; set; }
}

我希望得到temp_F列表中的current_condition字符串。我怎么能这样做?

4 个答案:

答案 0 :(得分:3)

假设您需要CurrentCondition实例列表中的所有温度,您可以使用Linq轻松完成此操作:

List<string> temps = current_condition.Select(x => x.temp_F).ToList();

根据已接受的答案,以下是如何使用Linq获得特定温度:

string temp = current_condition.Where(x => x.observation_time == "08:30").FirstOrDefault(x => x.temp_F);

答案 1 :(得分:2)

由于current_condition是一个列表,你必须知道你感兴趣的列表索引。假设你想索引0,你会写

Data data = new Data();
// Some code that populates `current_condition` must somehow run
string result = data.current_condition[0].temp_F.

答案 2 :(得分:1)

List<string> list = new List<string>();
current_condition.ForEach(cond => list.Add(cond.temp_F));

答案 3 :(得分:0)

您可以使用ElementAt(int)访问列表中的对象。

String t = current_condition.ElementAt(index).temp_F;