【问题标题】:Logic to skip repeating values in a variable跳过变量中重复值的逻辑
【发布时间】:2011-02-02 23:55:30
【问题描述】:

我有一个循环,其中变量值将在每个循环中更改并在每个循环中显示这些值。如果第二次重复相同的值,我需要跳过该值的显示

【问题讨论】:

  • 如果您有代码,请发布。上下文使我们更容易提供好的答案。

标签: c# .net programming-languages logic business-logic


【解决方案1】:

您需要从列表中删除重复项。我从 System.Collections.Specialized 命名空间中选择了 StringCollection。但是你可以使用 System.Collections.Generic 中的 List

String[] strings = new String[] { "1", "2", "3", "4", "2", "5", "4", "6", "7" };
StringCollection unique = new StringCollection();

foreach (String s in strings)
{
     if (!unique.Contains(s))
         unique.Add(s);
}

foreach (String s in unique)
{
     Console.WriteLine(s);
}

【讨论】:

  • 它不会..如果值为 1 2 3 4 2 6 7 会发生什么?以上可行吗?
  • 是的,我的代码假定字符串是一个字符串数组,但您也可以将相同的逻辑应用于整数数组。
  • 我的意思是如果 2 不只是作为下一个数字重复,它会在 4 个字符串之后重复.. 因此上述方法不起作用
  • 啊哈!好的,现在我明白你的意思了。
【解决方案2】:

在伪代码中

 declare var1

 for each item in the collection
      check if item is var1, if not print item
      set item to var1

【讨论】:

  • @seb,阅读问题并查看他的历史,这似乎更像是“你能为我做这个”或“我必须为家庭作业做这个”。在这种情况下,我更喜欢给出提示,而不是这样做。
  • 你能回答这个而不是责备吗?
  • 它不会..如果值为 1 2 3 4 2 6 7 会发生什么?以上可行吗?
猜你喜欢
  • 2019-03-06
  • 1970-01-01
  • 1970-01-01
  • 2014-05-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-18
相关资源
最近更新 更多