Как сравнить 2 Java строки массива и удалить, если имеют одинаковое значение - PullRequest
1 голос
/ 28 ноября 2010

у меня 2 массива строк,

  str1[] = {"a","b","aa","c"} 

и

  str2[] = {"aa","a","b","c","d"}

как мне сравнить и удалить значение, если оно существует в обеих строках [], ожидаемый результат, str3 [] = {"d"}

заранее спасибо

Ответы [ 2 ]

2 голосов
/ 28 ноября 2010

ts1 будет иметь "d" внутри этих операций.

String str1[] = {"a","b","aa","c"};<br/> String str2[] = {"aa","a","b","c","d"};<br/> TreeSet ts1 = new TreeSet(Arrays.asList(str2));<br/> ts1.removeAll(Arrays.asList(str1));

0 голосов
/ 28 ноября 2010

Преобразуйте массивы в список и добавьте их в набор, который автоматически удалит дубликаты.Используйте метод toArray () интерфейса Set для получения элементов в виде массива.

    String[] str1 = {"a","b","aa","c"};
    String[] str2 = {"aa","a","b","c","d"};

    Set set = new HashSet();
    set.addAll(Arrays.asList(str1));//add first array to set, removes duplicates
    set.addAll(Arrays.asList(str2));//add second array to set, removes duplicates
    String[] str3 = (String[])set.toArray(new String[set.size()]);//convert back to array
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...