有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java方法在结束之前返回

我正在使用最新的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,List是MoviedBAPI的实现


共 (2) 个答案

  1. # 1 楼答案

    解决了一半。结果表明,这是getImages()中的一种bug。如果我用try-catch包围它,它会抛出一个异常,即使源代码似乎不应该这样做。我会调查的

  2. # 2 楼答案

    如果在方法结束之前的任何地方都没有使用return,那么检查可能会得到异常,这可能会导致方法突然返回