-1

私は最新のEclipseを使用しています。メソッドが終了前またはreturnステートメントの前に終了する可能性はありますか?! 問題はランダムではなく、特定の行でのみ発生しますが、とにかく私には不可能に聞こえます。コンパイラのバグ?本当にわかりません。グーグルでは何も見つかりませんでした。

default: {
        ColumnSelector.showMovieSelector(list, frame);
        break;
    }

私のコードは、カスタマイズされたものを表示するだけですJoptionPane.showOptionDialogue:

public static int showMovieSelector(List<MovieDb> list,Component component) {
        JList<String> swinglist = new JList<>();
        String[] array = new String[list.size()];
        for (int i = 0; i < array.length; i++) {
            array[i] = list.get(i).getTitle();
        }
        swinglist.setListData(array);
        swinglist.setSelectedIndex(0);
        ImageIcon img = new ImageIcon(Toolkit.getDefaultToolkit().getImage(list.get(0).getImages().get(0).getFilePath()));
        JLabel l1=new JLabel(img);
        JSplitPane pane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, swinglist, l1);
        JOptionPane.showOptionDialog(component, pane, "", JOptionPane.OK_OPTION, JOptionPane.PLAIN_MESSAGE, null, null, null);
        return swinglist.getSelectedIndex();
    }

Component componentは私のカスタマイズした JFrame で、ListTheMovieDB API の実装です。

4

2 に答える 2

1

メソッドの終了前にリターンを使用していない場合は、例外が発生している可能性があることを確認してください。これにより、メソッドが突然返される可能性があります。

于 2013-09-30T16:25:03.320 に答える
0

半解。の一種のバグであることが判明しましたgetImages()。それをtry-catchで囲むと、ソースコードがこれを行うべきではないように見えても、例外がスローされます。調査します。

于 2013-09-30T19:52:41.887 に答える