3

我有这段代码,它说这里不允许使用 void 类型(我放 //error 注释的地方)当我删除 && ..... 它不会给出错误

public void actionPerformed(ActionEvent ae) {
if (ae.getSource() == ok) {
    Contact nweC = null;


    String vnm = tfVoor.getText();
    String anm = tfAchter.getText();
    String em = tfEmail.getText();
    if (em.trim().length() > 0 && !hetBoek.heeftContact(em)) {
        nweC = new Contact(vnm, anm, em);
    } else {
        tfEmail.setText("");
        JOptionPane.showMessageDialog(null, "Onjuist emailadres", "Mislukt", JOptionPane.PLAIN_MESSAGE);
    }
    //error if (nweC != null && hetBoek.voegContactToe(nweC)) {
                JOptionPane.showMessageDialog(null, "Toevoegen gelukt", "Succes", JOptionPane.PLAIN_MESSAGE);
    }
} else if (ae.getSource() == cancel) {
    tfVoor.setText("");
    tfAchter.setText("");
    tfEmail.setText("");
} else if (ae.getSource() == toon) {
    String s = hetBoek.toString();
    JOptionPane.showMessageDialog(null, s, "Druk op OK",
    JOptionPane.PLAIN_MESSAGE);
}
}

我希望有一个人可以帮助我!谢谢

4

6 回答 6

4

hetBoek.voegContactToe(nweC)返回void(无)。它必须返回 aboolean才能在if语句的表达式中使用它

于 2013-03-28T12:10:27.123 回答
3

hetBoek.voegContactToe(nweC)返回一个 void 。你应该有boolean类型if()

于 2013-03-28T12:10:07.407 回答
3

该方法hetBoek.voegContactToe最有可能void。它不返回值,所以在if语句中使用它时您的意图是什么:

if (nweC != null && hetBoek.voegContactToe(nweC)) {

该方法应该返回boolean而不是返回void吗?

于 2013-03-28T12:10:29.497 回答
3

我认为这个方法的返回类型是无效的

hetBoek.voegContactToe(nweC);

它的返回类型应该是布尔值。

于 2013-03-28T12:10:36.303 回答
3

您缺少布尔值

public boolean hetBoek.voegContactToe(Contact contact)


if (e1 op1 e2 op2 e3 ... )
{
...
}

e - 需要返回布尔值的表达式

于 2013-03-28T12:14:36.440 回答
2

目前hetBoek.voegContactToe(nweC);无效。它的返回类型应该是布尔值。

找到您的方法voegContactToe() 并将其 reutrn 类型更改为布尔值并根据逻辑添加 return 语句。

于 2013-03-28T12:18:41.233 回答