从包含多个String元素的Array中删除重复项

Dan*_*Zoe 1 java arrays sorting

我想删除String我内部的重复值String[],但我不确定如何做到这一点.

下面是一个例子:

public static void main(String[] args){

  String[] listofWords = new String [5];
  listofWords[0]  = "BMW";
  listofWords[1]  = "Audi";
  listofWords[2]  = "Mercedes";
  listofWords[3]  = "Audi";
  listofWords[4]  = "BMW";
  for(int i = 0; i<listofWords.length-1; i++){
    system.out.println(listofWords[i]);
  }
}
Run Code Online (Sandbox Code Playgroud)

我如何删除此中的重复项array并且只有每个中的一个?

the*_*war 6

您可以将您转换String[]Set:

String [] listofWords = new String [5];
listofWords [0]  = "BMW";
listofWords [1]  = "Audi";
listofWords [2]  = "Mercedes";
listofWords [3]  = "Audi";
listofWords [4]  = "BMW";

Set<String> set = new HashSet<String>(Arrays.asList(listofWords));
System.out.println(set); //prints [Audi, Mercedes, BMW]
Run Code Online (Sandbox Code Playgroud)

您可以将Set后面的内容转换为String[]:

listofWords = set.toArray(new String[set.size()]);
Run Code Online (Sandbox Code Playgroud)