繁体   English   中英

类中的 Java 方法不能应用于给定类型

[英]Java method in class cannot be applied to given types

我正在尝试将Query类中名为searchitem的方法调用到名为 Search 的 jbutton,它将搜索数据库中表项中的所有详细信息并将它们显示在 jtextfields 中。 下面是 Query 类中的searchitem方法。

public ResultSet searchitem() {
    try {
        String sql = "select * from tblitem";
        stmt = conn.connect.createStatement();
        rs = stmt.executeQuery(sql);
        return rs;
    } catch (SQLException ex) {
        System.out.println("SQL Exception in Seach Book "+ex.getMessage());
        JOptionPane.showMessageDialog(null, "Error in Retriving Book Information", "Error", JOptionPane.ERROR_MESSAGE);
        Logger.getLogger(Query.class.getName()).log(Level.SEVERE, null, ex);
        return null;
    }
}

这是 jbutton 中的待办代码。

try {

        String id, nme,cos,pr,available,sid,search;

       search= stf1.getText();

        if(search.length()!=5 || !search.toLowerCase().startsWith("i")){
            JOptionPane.showMessageDialog(null, "Incorrect Item ID \nItem ID should start with 'i' and 5 characters should be used ", "Error", WIDTH);
        }


        else{
            Query query = new Query();
            rs = query. searchitem(search);
            rs.next();

            id = rs.getString(1);
            nme= rs.getString(2);
            cos = rs.getString(3);
            pr = rs.getString(4);
            available = rs.getString(5);
            sid = rs.getString(6);

           boolean availablity = Boolean.valueOf(available);

            etf1.setText(id);
            etf2.setText(nme);
            etf3.setText(cos);
            etf4.setText(pr);
            ecb1.setSelected(availablity);
            etf5.setText(sid);
        }

          } catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, "Item not Available. \nEnter an existing Item ID", "Unavailable", JOptionPane.ERROR_MESSAGE);
        System.out.println("SQL Exception in retriving Item details");
        Logger.getLogger(Item.class.getName()).log(Level.SEVERE, null, ex);
    }
}                                        

但是我在rs = query. searchitem(search);行中遇到错误rs = query. searchitem(search); rs = query. searchitem(search);

Query 类中的方法 searchitem 不能应用于给定类型;
要求:无参数
找到:字符串
原因:实际和形式参数列表的长度不同

您的方法 segature 没有参数: public ResultSet searchitem() {

但是你用一个参数rs = query. searchitem(search);调用它rs = query. searchitem(search); rs = query. searchitem(search); . 那不合适。

因此,在调用函数时删除参数,或者实现一个需要正确类型参数的函数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM