我有一个矩阵,它有一组元素和重复 我想将项添加到ArrayList,没有重复的元素
package window1;
import java.util.ArrayList;
public class Mine {
public static void main(String[] args) {
ArrayList<String> listName = new ArrayList<>();
String sal[]={"val","sa","de","dal","val","sa","de"};
for(int i =0;i<sal.length;i++){
listName.add(sal[i]);
}
for(int j=0;j<listName.size();j++){
System.out.println(listName.get(j));
}
}
}
答案 0 :(得分:1)
您可以使用JWT
方法在添加项目之前验证项目是否存在于列表中。
如果此列表包含指定的元素,则java.util.ArrayList.contains(Object)方法返回true。
contains()
答案 1 :(得分:0)
您可以使用contains方法:
if(!listName.contains(sal[i]))
listName.add(sal[i]);
输出
val
sa
de
dal
(适用!listName.contains(SAL [I]))强>
如果项目已在列表中并使用!
否定条件,则包含将返回。
答案 2 :(得分:0)
Set<String> set = new HashSet<String>(listName);
System.out.println("Set values .....");
for (String temp : set) System.out.println(temp);
答案 3 :(得分:0)
使用Hashset删除重复项
Set<String> noDupSet = new HashSet<>(Arrays.asList(new String[] {"val1","val2","val1"}));
答案 4 :(得分:0)
您可以使用 HashSet 代替 ArrayList 。例如:
HashSet<String> set=new HashSet<String>();
set.add("Ravi");
set.add("Vijay");
set.add("Ravi");
set.add("Ajay");
//Traversing elements
Iterator<String> itr=set.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
它将显示Ravi,Vijay和Ajay作为输出。注意Ravi添加了两次,但只添加了一次,因为 HashSet仅包含唯一元素。
或强>
如果要在 ArrayList 中添加唯一元素,则需要先在HashSet中添加项目,然后在 ArrayList 中添加项目,如下所示:
import java.util.ArrayList;
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<String> listName = new ArrayList<String>();
HashSet<String> newListName = new HashSet<String>();
String sal[]={"val","sa","de","dal","val","sa","de"};
// add unique items in HashSet(newListName)
for(int i=0; i<sal.length; i++){
newListName.add(sal[i]);
}
// add items of HashSet into ArrayList(listName)
for(String s: newListName) {
listName.add(s);
}
// display ArrayList(listName)
for(String s: listName) {
System.out.println(s);
}
}
}
答案 5 :(得分:0)
首先将您的数组转换为hashSet.Which将删除重复项。
接下来将HashSet转换为ArrayList。(您想要的数据结构集合)
检查下面的代码。
public static void main(String[] args)
{
String sal[]={"val","sa","de","dal","val","sa","de"};
HashSet<String> ss = new HashSet(Arrays.asList(sal));
System.out.println("HashSet-");
System.out.println(ss);
ArrayList<String> asl= new ArrayList<String>(ss);
System.out.println("ArrayList-");
System.out.println(asl);
}
O / P:
HashSet-
[de, val, sa, dal]
ArrayList-
[de, val, sa, dal]