всем доброго вечера!
решаю эту задачку уже неделю точно(периодически возвращаюсь к ней), уже видел разного рода решения, однако пытаюсь до последнего решить по-своему. вот пришёл к такой версии. суть заключается в том, что происходит перебор вариантов для сравнения, пока все "null" не выпадут, однако столкнулся с некоторыми сложностями, которых не могу избежать, выдаёт ошибку, мол сравнивает с нулл значение ячейки массива, чего делать, конечно, нельзя. но это ничего ещё, однако вторая проблема - с выходом из массива. уверен, что найдутся умельцы помочь и сделать допиленную версию моего кода рабочей, а так же с радостью выслушаю, какие наиболее оптимальные и логичные варианты для решения данной задачки есть в принципе. всем удачи, жду ваших решений и обсуждений)
package com.javarush.task.pro.task05.task0508;
import java.util.Scanner;
/*
Удаляем одинаковые строки
*/
public class Solution {
public static String[] strings;
public static void main(String[] args) {
strings = new String[6];
Scanner s = new Scanner(System.in);
for (int vv = 0; vv < strings.length; vv++){
strings[vv] = s.nextLine();
}
for (int i = 0; i < strings.length; i++){ //цикл для сравниваемых значений
while (strings[i] == null){
if (i < strings.length - 1) {
i++;
}
}
for(int j = 0; j < strings.length; j++){ //цикл для знач-ий с которыми сравниваю
while (strings[j] == null){
if (j < strings.length - 1){
j++;
}
}
if (i != j && strings[i].equals(strings[j])){
strings[i] = null;
strings[j] = null;
}
}
}
for (int i = 0; i < strings.length; i++) {
System.out.print(strings[i] + ", ");
}
}
}