簡體   English   中英

c#-如何從列表中放入項目 <string> 列出 <object>

[英]c# -How to put items from a List<string> to List<object>

我試圖將所有類型的字符串列表中的項放到類型對象的列表中。

這是我的課:

public class Object
{
    public string url;
    public bool case;
    public void Add(string item)
    {
        url = item;
    }
}

我已經嘗試了以下方法(某種是我試圖從中添加元素到我的新類型對象列表中的類型字符串列表):

List<Object> finals = something.OfType<Object>().ToList();

List<Object> finals = new List<Object>(); 
foreach(var item in something)
{
    finals.Add(item);
}

我想要的是讓我的對象類中的“ url”與列表中的每個元素相等,並且對所有元素將“ case”設置為false。

我希望我足夠清楚。 提前致謝 !

首先,您需要創建Object的實例,然后可以將其添加到列表中。 默認case ,屬性case為false。

List<Object> finals = new List<Object>(); 
foreach(var item in something)
{
    var newObject = new Object(item);
    finals.Add(newObject);
}

在您的情況下,您可以使用LINQ通過單線輕松實現這一目標。

List<Object> finals = something.Select(s => new Object(s)).ToList();

bool的默認值為false ,因此您不需要任何特定的設置器。

以下是針對您的案例的代碼:

IEnumerable<Object> finals = strings.Select(s => new Object() { url = s });

case屬性將默認為false,因此您不必顯式鍵入它。

取字符串列表中的每個項目,遍歷它們並返回具有兩個屬性的對象列表,即url和case。 將大小寫設置為false。 收益回報將返回對象的可枚舉接口。

public class MyObject {
    public string url { get; set; }
    public bool case { get; set; }
}

public IEnumerable<MyObject> process(List<string> listOfUrls) {
    foreach(var item in listofUrls) {
        yield return new MyObject {
            url = item;
            case = false;
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM