2012-03-07 93 views
0

我想要做的是创建一个对象,然后使用set和get的,并将它放在对象中的一个数组中。这可能吗?所以从我下面的例子中我得到了设置并获取条形码的名称,但是接下来我想将名称和位置存储在要访问的对象中的数组中。这可能吗?在一个对象中创建一个数组

public class barlist 
{ 
    private string barName; 
    private string barLocation; 

    public string Name 
    { 
     get { return barName; } 
     set { barName = value; } 
    } 

    public string Location 
    { 
     get { return barLocation; } 
     set { barLocation = value; } 
    } 
} 
+0

是否有一个特定的原因,你会想这样做? – Khan 2012-03-07 16:19:06

+0

你想把对象放在对象内的数组中吗? – Oded 2012-03-07 16:19:39

+0

我不知道我完全跟着你。你为什么不做一个'Bar'类,然后使用'List '? – 2012-03-07 16:19:50

回答

0

可能是 - 合理没有。
数组应该是该类的一个静态属性或一个单独的类。
您只想要一个数组,否则删除一个条就意味着要修改该条的所有实例。

+0

为什么我这样做是为了保留所有的酒吧名称和地点。有没有一种方法可以创建一个对象,只是从动态条名称中删除?例如。如果我希望对象名称是栏名称,名称来自文本框或列表,它不喜欢它。例如barlist item.text = new barlist()do not not work – user1158745 2012-03-07 16:34:20

0

根据评论,正是你想要的是令人困惑。我想,你想要的是能够引用酒吧列表作为任何一个酒吧的成员。这很简单;你想要的是一个静态成员:

public class barlist 
{ 
    ... 

    public static List<barlist> listOfBars; 
} 

然后,您可以创建棒并将其添加到列表:

var bar = new barlist(); 
barlist.listOfBars.Add(bar); 

你可以让你的“barlist”级似乎集合而不是精心制作这是一个通过实现IList接口的集合,它强制执行方法来添加,删除和访问列表中的小节。您可以简单地将这些调用“传递”到私人列表中,并且如果您希望任何对象具有相同的列表,请将该列表设置为静态。

0

我不太确定你想完成什么,但是你可以定义一个你的对象的数组,这可以通过强类型为你的类或只使用对象。您可以使用此三种结构

  1. ArrayList < - 这个手柄型动物类型的对象
  2. List<barlist> <的----这种处理从类barlist
  3. barList[] blah = new barList[10] ; <对象只---一个限定阵列10条class barList
0

你可以在类中使用例如静态列表并将每个对象添加到构造函数列表中

EG(您的代码)

public class barlist 
{ 
    private string barName; 
    private string barLocation; 
    public static List<barlist> myBarArray = new List<barlist>(); 
    public string Name 
    { 
     get { return barName; } 
     set { barName = value; } 
    } 
    public barlist() 
    { 
     myBarArray.Add(this); 
    } 
    public string Location 
    { 
     get { return barLocation; } 
     set { barLocation = value; } 
    } 
} 

现在每次创建barlist对象时,该对象将被添加到列表中。

然后您可以访问每个barlist barName和barLocation。

相关问题