如何获取列表<;双倍>;这在列表中<;对象>;元素(c#)

如何获取列表<;双倍>;这在列表中<;对象>;元素(c#),c#,list,C#,List,我有一个列表,它的第一个元素是列表,我的意思是: //---- List <object> lista = new List<object>(); List <double> listain = new List<double>(); Lista.Add(listain); //--- //---- List lista=新列表(); List listain=新列表(); Lista.Add(listain); //--- 现在我想

我有一个
列表
,它的第一个元素是
列表
,我的意思是:

//----

List <object> lista = new List<object>();

List <double> listain = new List<double>();

Lista.Add(listain);


//---
//----
List lista=新列表();
List listain=新列表();
Lista.Add(listain);
//---
现在我想获取
lista[0]
中的数据(该元素是
列表
),但我不知道如何操作;我试过使用
foreach
,但这对对象不起作用


有什么想法吗?

您需要将该元素强制转换为所需的数据类型。这边走

List<double> col = (List<double>) lista[0];

for (i = 0; i < col.Count; i++)
{
    //Do something
}
List col=(List)lista[0];
对于(i=0;i
您需要将该元素强制转换为所需的数据类型。这边走

List<double> col = (List<double>) lista[0];

for (i = 0; i < col.Count; i++)
{
    //Do something
}
List col=(List)lista[0];
对于(i=0;i
需要投射它-因此:

var doubleList = (List<double>)objectList[0];
var doubleList=(List)objectList[0];
或者,如果你不知道它会是那种类型,你可以

var doubleList = objectList[0] as List<double>;
if (doubleList != null)
{
    // do stuff
}
var doubleList=objectList[0]作为列表;
如果(双重列表!=null)
{
//做事
}

你需要施放它-因此:

var doubleList = (List<double>)objectList[0];
var doubleList=(List)objectList[0];
或者,如果你不确定它将是那种类型,你可以这样做

var doubleList = objectList[0] as List<double>;
if (doubleList != null)
{
    // do stuff
}
var doubleList=objectList[0]作为列表;
如果(双重列表!=null)
{
//做事
}

如果列表仅包含双打列表,则应使用:

var doubleList = List<List<Double>>();
var doubleList=List();
添加类似于:

var double = 1.1;
var insertList = new List<Double>();
insertList.Add(double);
doubleList.Add(insertList);
var-double=1.1;
var insertList=新列表();
insertList.Add(双精度);
doubleList.Add(插入列表);

如果列表仅包含双打列表,则应使用:

var doubleList = List<List<Double>>();
var doubleList=List();
添加类似于:

var double = 1.1;
var insertList = new List<Double>();
insertList.Add(double);
doubleList.Add(insertList);
var-double=1.1;
var insertList=新列表();
insertList.Add(双精度);
doubleList.Add(插入列表);
试试看

foreach(列表A[0]中的双项作为列表)
{
}
试试看

foreach(列表A[0]中的双项作为列表)
{
}
foreach(lista.Cast()中的变量项)
{
}
foreach(lista.Cast()中的变量项)
{
}

首先,回答您的问题: 您必须将第一个元素强制转换到正确的类中

foreach (List<double> doubleList in lista){
    foreach(var number in doubleList){
    // do whatever you want 
    }
}

它不会改变编程,但会使理解更加清晰。

首先,回答您的问题: 您必须将第一个元素强制转换到正确的类中

foreach (List<double> doubleList in lista){
    foreach(var number in doubleList){
    // do whatever you want 
    }
}
它不会改变编程,但会使理解更加清晰