列表列表闻起来很糟糕吗,我还有什么其他选择

发布于 2024-09-10 22:38:12 字数 327 浏览 3 评论 0 原文

我需要整理一个列表,但整个想法听起来不太漂亮。 光是听起来就很麻烦。是否有其他模式来保存列表列表。

我的第一个想法是使用 Arraylist 的 arrayList。

c#、.net-2

更多:那么要存储的项目数量很少但总是在变化。

笔记: 我在这个问题上使用 ArrayList 得到了纠正:

What's bad with an ArrayList in . net-2.0

I need to assemble an list of lists, but the whole idea doesn't sound too pretty.
It just sounds so cumbersome. is there some other pattern for holding a list of lists.

my first though is to use an arrayList of Arraylist.

c#, .net-2

more: then number of items to be stored is small but always changing.

NOTE:
I was corrected on the use of ArrayLists on this Question:

What's wrong with using an ArrayList in .net-2.0

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

被翻牌 2024-09-17 22:38:12

List> 没有任何问题 - 在这种情况下,LINQ 的 SelectMany 可以成为您的朋友。

There's nothing wrong with List<List<T>> - LINQ's SelectMany can be your friend in that situation.

撩发小公举 2024-09-17 22:38:12

使用在自定义类中创建的对象怎么样?

例如,客户可以有多个地址。创建一个具有 Address 属性的 Customer 对象。然后,您可以拥有一个客户集合(数组、ArrayList 等),并且每个客户可以拥有一个地址集合。

这适合多种信息,例如产品类别中的产品、部门中的员工。

通过这种方式处理层次关系在编码中更容易。

How about using objects created in custom classes?

For example, Customers can have multiple Addresses. Create a Customer object which has an Address property. Then, you can have a collection (array, ArrayList, etc) of Customers, and each Customer can have a collection of Addresses.

This fits many kinds of information, such as Products in Product Categories, Employees in Departments.

It's easier in coding to handle the hierarchical relationship this way.

壹場煙雨 2024-09-17 22:38:12

您可以,但最好将其包装到具有明确定义的公共方法的类中。

you can but it'd better to wrap it to a class with well defined public methods.

心的位置 2024-09-17 22:38:12

根本不是问题。我已经使用过它,它非常适合我当时的需要。该模式是列表的列表。 :)

Not a problem at all. I've already used it and it was a fit for what I needed at the time. The pattern is a list of lists. :)

尾戒 2024-09-17 22:38:12

列表的列表本身并不是一种难闻的气味。如果列表的大小都相同,则可能需要使用二维数组,例如 int[2,2],但如果列表的长度不同,则可以使用列表的列表是正确的方法,不需要为不规则的二维数组正式编码一个类。

A list of lists is not, of itself, a bad smell. If your lists are all going to be of the same size, you may want to use a 2D array e.g. int[2,2], but if the lists are of different lengths, then a list of lists is the right way to go, short of formally coding a class for a ragged 2D array.

邮友 2024-09-17 22:38:12

您当然可以使用通用列表或非通用变体 ArrayList 来做到这一点。

List<List<string>> listOfLists = new List<List<string>>();
listOfLists.Add(new List<string>());
listOfLists.Add(new List<string>());

ArrayList stringListOfStringLists = new ArrayList();
stringListOfStringLists.Add(new ArrayList());
stringListOfStringLists.Add(new ArrayList());

You can certainly do that either using generic lists or the non-generic variant, ArrayList.

List<List<string>> listOfLists = new List<List<string>>();
listOfLists.Add(new List<string>());
listOfLists.Add(new List<string>());

ArrayList stringListOfStringLists = new ArrayList();
stringListOfStringLists.Add(new ArrayList());
stringListOfStringLists.Add(new ArrayList());
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文