Конечно, данные равны нулю, вы прямо сказали.Если вы считаете, что
String data[][] = null;
должен инициализировать 2-мерный массив, а каждое значение равно нулю, вы ошибаетесь.
Например, вам нужно:
String data[][] = new String[10][10]
this инициализировал 2-мерный массив из 100 элементов, то есть массив из 10 элементов, каждый из которых является массивом из 10 элементов.
Массив в Java - этообъект, как и любой другой объект, и, следовательно, должен быть инициализирован с новым.data
в вашем примере это ссылка на массив, который сам состоит из ссылок на другие массивы (= объекты).