Объясните, пожалуйста, что я делаю не так?
Я рассуждал так:
Первая итерация внешнего цикла. Первый элемент массива не равен null, поэтому входим во второй цикл. На этой итерации внутреннего цикла индекс внешнего цикла равен индексу внутреннего, поэтому сразу заходим на вторую итерацию внутреннего цикла. Теперь ещё раз проверяем, чтобы элемент массива не был равен 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) {
Scanner console = new Scanner(System.in);
String[] strings = new String[6];
for (int i = 0; i < strings.length; i++)
strings[i] = console.nextLine();
for (int i = 0; i < strings.length; i++) {
if (strings[i] == null)
continue;
for (int k = 0; k < strings.length; k++){
if (strings[i] == null)
break;
if (i == k)
continue;
else if (strings[k].equals(strings[i]))
strings[i] = null;
}
}
for (int i = 0; i < strings.length; i++) {
System.out.print(strings[i] + ", ");
}
}
}