【问题标题】:How to remove duplicate name in arraylist in android [duplicate]如何在android中删除arraylist中的重复名称[重复]
【发布时间】:2013-06-03 13:02:35
【问题描述】:

我有一个数组多次具有相同的名称。那么如何删除它,只有我想以一个名称显示: ArrayList 名称 = new ArrayList();

name= 印度、日本、中国、美国、中国、日本、澳大利亚、印度、中国

我想这样显示

name= 印度、日本、中国、美国、澳大利亚

我有点困惑,如何删除重名。这意味着,我想一次显示一个唯一的名称,而不是在列表中显示多个相同的名称。

注意:

我找到了解决方案,但是当我显示在列表中时,如果第一个元素日本显示然后我单击然后它在 Toast 中显示印度,这是怎么发生的?然后其他人一样。在吐司上显示不准确。

【问题讨论】:

  • 日本再次重复 :)
  • HashSet 会是更好的选择
  • @PankajKumar 是的,你是对的。感谢您指出。我删除了我的答案,而是投票决定关闭为重复。
  • 我找到了解决方案,但是当我显示在列表中时,如果第一个元素日本显示然后我单击然后它在 Toast 中显示印度,这是怎么发生的?然后其他人一样。在吐司上显示不准确。
  • 索引中一定有一些不匹配的地方。退房。

标签: android arraylist


【解决方案1】:

在添加 if !arraylist.contains(string) then arraylist.add(string);我认为这是最好的方法

例如:

if (!array.contains(value)) {
   array.add(value);
}

【讨论】:

    【解决方案2】:

    使用 HashMap 而不是 ArrayList。 HashMap 中的任何元素都是唯一的。

    【讨论】:

    • 或者更确切地说是一个集合,例如 HashSet。数据不需要键值对。
    • @laalto 你是对的 ;) 我刚醒来.. 我猜还在睡觉
    【解决方案3】:

    使用 Hashset 将是最好的选择。 Hashset 不需要键值对机制。要么 您尝试使用 Arraylist 的 contains() 方法的其他选项,但它需要循环检查元素。

    【讨论】:

      猜你喜欢
      • 2010-12-25
      • 2018-05-29
      • 1970-01-01
      • 2020-03-06
      • 2015-08-04
      • 2016-07-08
      • 1970-01-01
      • 1970-01-01
      • 2019-02-23
      相关资源
      最近更新 更多