2012-08-17 61 views
0

我想知道我应该如何处理从另一个类的列表引用的返回?我想从调用方法中选择列表的内容?如何处理返回列表

,我使用以填补编号的列表,然后返回列表

public List<int> Shuffle() 
{ 
    code.... 
    return nameOfList; 
} 

回答

2

这是优良的基准的简化方法。

一旦调用代码中的引用超出范围,该列表将被正确处置。

要使用该列表中的所有你需要做的是:

List<int> myList = otherObject.Shuffle(); 

你需要在你的方法来创建列表:

public List<int> Shuffle() 
{ 
    List<int> nameOfList = new List<int>(); 
    code.... 
    return nameOfList; 
} 
+0

但我不知道如何使用它,并从调用方法挑选的内容? – 2012-08-17 09:38:00

+0

我已经在课程开始时创建了列表! – 2012-08-17 09:41:23

+0

但是,如果我想用新内容创建一个新列表,那么在该方法内部创建它可能会更好,因为我猜目前列表将被删除? – 2012-08-17 09:42:59

0

列表是引用类型,所以参考总会即使您在被调用的方法中实例化列表,也会返回。

1

您将不得不创建列表,填写并返回它,或者您可以将它作为参数传递并填充它。

选项A

public List<int> Shuffle() 
{ 
    nameOfList = new List<int>(); 
    code.... 
    return nameOfList; 
} 

选项B

Call: 
Shuffle(ref myList); 

Implementation: 
public List<int> Shuffle(ref List<int> myList) 
{ 
    // work on myList 
} 
+0

好的,纠正我,如果我错了,但我是否返回列表或只是我的代码引用?我只想调用这个方法一次,并用一些数字填充列表,然后在调用方法中选择内容,这是我不知道如何处理的最后一部分? – 2012-08-17 09:40:35

+0

“挑选内容”是什么意思? – 2012-08-17 09:50:36

+0

你的passig是对列表的引用,但为了通过引用来传递列表var,你可以使用:public List Shuffle(ref List myList){...}并通过List:Shuffle(ref myList)。在这种情况下,您将在Shuffle例程内的列表中完成所有更改。 – CloudyMarble 2012-08-17 09:51:12