Я не понимаю, почему на присвоение null при запуске выдается ошибка:
"java.lang.NullPointerException
at com.javarush.task.pro.task05.task0508.Solution.main(Solution.java:28)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)"
Если вместо 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);
strings = new String[6];
System.out.println("Начало...");
//Считать строки
for (int i=0; i<6; i++) {
strings[i] = console.nextLine();
}
// Сверить текущую строку со всеми следующими.
// до i<5 чтобы не превысить размерность во внутр цикле
for (int i=0; i<5; i++) {
String s = strings[i];
Boolean ok = false;
for (int k=i+1; k<6 ; k++) {
if (s.equals(strings[k])) {
ok=true;
strings[k]=null;
}
}
if (ok) strings[i]=null;
}
// не менял этот код:
for (int i = 0; i < strings.length; i++) {
System.out.print(strings[i] + ", ");
}
System.out.println();
System.out.println("...Окончание");
}
}