Tag: list

List – 我是否传递对象或引用?

好吧,我已经研究了generics并有以下问题: List list=new List SomeClass MyInstance=SomeClass(); list.Add(MyInstance); 我不确定将添加到列表中的内容 – 引用类型的引用或对象(指向MyInstance的实际值)。 编辑:或者我会添加指向实际对象的值(即参考数据类型)? 谢谢

如何序列化IList 等接口

可能重复: 如何序列化IList ? 我希望序列化一个类(我们称之为S ),它包含IList类型的属性,其中T是我定义的另一个类。 当我尝试将类S的实例序列化为XML时,我得到一个exception。 这是可以理解的,因为XmlSerializer不知道使用哪个具体类。 是否有一种方法,希望使用属性,指定在序列化/反序列化实例时要实例化的具体类。 我的类S实现创建了List类的实例。 这是一些代码来说明我的例子: using System; using System.Xml.Serialization; using System.IO; [Serializable] public class T { } [Serializable] public class S { public IList ListOfTs { get; set; } public S() { ListOfTs = new List(); } } public class Program { public void Main() { S s = new […]

为什么有List .BinarySearch(…)?

我正在看List,我看到一个带有一些重载的BinarySearch方法,我不禁想知道在List中有这样的方法是否有意义? 除非列表已排序,否则为什么我要进行二进制搜索? 如果列表没有排序,调用该方法只会浪费CPU时间。 在List上使用该方法有什么意义?

防止重复列表条目

我希望我能够解决这个问题,但是我无法理解为什么这段代码无法正常运行并允许将重复的条目添加到List中。 即使我从同一位置拖动相同的文件,也永远不会满足if语句条件。 我不明白为什么“包含”方法不匹配它们。 public class Form1:Form { private List dragDropFiles = new List(); private void Form1_DragDrop(object sender, DragEventArgs e) { try { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); OutputDragDrop(files); } } catch { } } private void Form1_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) e.Effect = DragDropEffects.Copy; else e.Effect = DragDropEffects.None; } private void […]

在列表框中插入列表

我是C#的新手,我正在尝试在C#中进行探索,但是我尝试在列表框中添加一个列表。 我遇到的错误是: Object reference not set to an instance of an object. 知道如何解决这个问题吗? namespace WindowsFormsApplication { public partial class Form1 : Form { something a = something iets(); public Form1() { InitializeComponent(); } // part1 class something { public List testing { get ; set; } } // part2 private void button1_Click(object sender, EventArgs e) […]

如何删除添加到List中的最后一个元素?

我在c#中有一个List,我在其中添加列表字段。现在添加i时必须检查条件,如果条件满足,那么我需要删除列表中添加的最后一行。 这是我的示例代码.. List rows = new List(); foreach (User user in users) { try { Row row = new Row(); row.cell = new string[11]; row.cell[1] = user.””; row.cell[0] = user.””; row.cell[2] = user.””; rows.Add(row); if (row.cell[0].Equals(“Something”)) { //here i have to write code to remove last row from the list //row means all the last […]

c#读取匿名类型列表与foreach发生错误

我需要从这个列表中获取数据,但是当我把我的foreach运行时错误说明列表包含空对象时。 但是如果我删除foreach并在listbox.itemsSource接收列表的行上放置一个断点,我看到我的列表正确加载了所有项目。 var imgs = e.Document.DocumentNode.SelectNodes(@”//img[@src]”) .Select(img => new { Link = img.Attributes[“src”].Value, Title = img.Attributes[“alt”].Value, }).ToList(); listBoxPopular.ItemsSource = imgs; foreach (var item in imgs) { listBoxPopular.Items.Add(new PopularVideos(item.Title, item.Link)); } 类: class PopularVideos { public PopularVideos() { } public PopularVideos(string titulo, string url) { Titulo = titulo; BitmapImage Img = new BitmapImage(new Uri(url)); } public […]

如何通过组合重复数据显示为单个对象来显示列表对象中的所有数据?

这是我在文件中的输入商店: 50|Carbon|Mercury|M:4;C:40;A:1 90|Oxygen|Mars|M:10;C:20;A:00 90|Serium|Jupiter|M:3;C:16;A:45 85|Hydrogen|Saturn|M:33;C:00;A:3 这里50,90,90,85表示重量 , M,C,A表示该元素的每一个中的比例。 现在我想从最高到最低显示每个元素(即碳,氧等),如果有多个具有相同权重的元素,将它们分组在一个权重下 , 按行星 (火星,木星)和元素 ( 按字母顺序)按字母顺序排序碳,氧等..) 预期产量 : 1)90 Serium;Jupiter (sorted alphabetically by planet name). compounds:M:3;C:16;A:45 Oxygen;Mars compounds:M:10;C:20;A:00 2)85 Hydrogen;Saturn M:33;C:00;A:3 3)50 Carbon;Mercury M:4;C:40;A:1 这就是我的表现: public class Planets { public int Number { get; set; } //This field points to first cell of every row.output 50,90,90,85 public […]

迭代时从对象列表中删除元素

我有一个id / parents列表,我正在迭代外部扩展。 这个列表可以有大约11 000行,这就是为什么我需要删除一些元素,所以我将只显示我需要的。 元素清单: FlatData[] elements = new FlatData[] { new FlatData {Id = 3, ParentId = 1, Text = “A”}, new FlatData {Id = 4, ParentId = 1, Text = “D”}, new FlatData {Id = 5, ParentId = 2, Text = “E”}, new FlatData {Id = 7, ParentId = 2, Text = […]

比较2个列表之间的值并减去常见元素的值 – C#

我需要准备一张图表,其中我需要显示3行。 一个用于显示一周的新问题,第二个用于一周的已结束问题,第三个用于一周的总公开问题。 出于这个原因,我准备了一个查询,并且能够成功创建2个单独的列表 – 一个列表维护每周新发布的计数,第二个列表维护每周的已关闭问题计数。 以下是第一个列表的示例数据(一个维护新问题的列表): [0]: { Week = {6/14/2015 12:00:00 AM}, Count = 1 } [1]: { Week = {3/5/2017 12:00:00 AM}, Count = 1 } [2]: { Week = {5/21/2017 12:00:00 AM}, Count = 4 } [3]: { Week = {6/4/2017 12:00:00 AM}, Count = 7 } [4]: { Week = {6/11/2017 […]