Сравнение значений NULL в Java - PullRequest
0 голосов
/ 13 ноября 2018

У меня есть код, который сравнивает данные, но эти данные содержат нулевые значения, а не пробелы (""), они могут / не могут быть одинаковыми, я думаю, но я попытался сравнить повторяющиеся значения NULL, такие как

         for(int i=0;i<length;i++)
      {
    String data=sample_data.getData();// contains about 
       1000 null rows
    if(data.equals(null) || data.equals("") || data== null 
     ||data.isEmpty())
      System.out.print("No Data"); 

   }

Iмог бы использовать .contains, но это не сработает, потому что оно в цикле.Ни один из методов не позволяет печатать вывод как No Data. Я также пытался использовать try catch, потому что для того, чтобы убедиться, что все ошибки найдены и были правильными в то же время, isEmpty() и .equals(null) были где-то илидругое выдает исключение как NULL, но даже после удаления и простого использования ==Null, осознавая тот факт, что данные сами по себе равны нулю, и сравнивает их, как null.equals, не будет работать, но в случае == я обнаружил, что исключение ошибки изменилось на значениекак 1 после того же ошибки, и я не смог распознать это.Вот образец, который я показываю, я не могу опубликовать точное, но вышеизложенное проясняет.Есть ли другой способ, которым я мог бы обработать эти NULL значения.

Примечание: я не хочу использовать цикл для итерации данных, а также каждый раз сравнивая значения NULL, потому что уже есть внешний цикл для большихнабор значений не совпадает с примером кода.

Ответы [ 2 ]

0 голосов
/ 03 января 2019

В этом

       String data=sample_data.getData();// contains about 1000 null rows
       if(data.equals(null) || data.equals("") || data== null 

Вы, очевидно, обеспокоены тем, что data может быть нулевым.

Если это действительно ноль, то самое первое предложение в вашем операторе if сгенерирует исключение нулевого указателя ... потому что вы не можете вызвать метод equals для нулевой ссылки.

Вы хотите

       if (data == null || data.isEmpty())

и это охватывает все случаи ничего, кроме, возможно, случая, когда данные представляют собой «некоторое количество пробелов», но я оставлю это для вас.

0 голосов
/ 13 ноября 2018

Восстановление windows до заводских настроек восстановит windows (как следует из названия);это не будет портить ничего.

...