Чтение расширения файлов в каталоге с Java?

У меня есть простая программа, которая читает все файлы из данного каталога в массив. Затем массив проходит по циклу, а имена файлов указываются в JFrame как отдельные JLabels.

Я также могу прочитать расширение файла, используя этот код:

                String extension = "";
                int i = FileName.lastIndexOf('.');
                if (i > 0) {
                    extension = FileName.substring(i+1);
                }

Это прекрасно работает, однако, когда я пытаюсь использовать расширение в операторе if, как это:

                    if(extension == "java")
                     {
                        System.out.println(FileName);
                     } 
                    else
                    {
                      System.out.println("error");
                    }

все, что я получаю, это сообщения об ошибках в консоли, хотя в каталоге есть несколько java-файлов (как видно из результатов JFrame!)

Может кто-нибудь сказать мне, в чем проблема? Спасибо!

1 ответ

Решение

Изменить на это:

if (extension.equals("java"))

Сравнение строк с использованием == сравнивает объекты, а не значения.

Другие вопросы по тегам