You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java调用方法时出现') expected'错误,请求排查提示

解决Java中"close parenthesis is expected"及"amount无法解析"错误

你的问题出在方法调用的语法上——Java(在非预览特性的常规版本中)不支持像amount:10这样的命名参数写法,这是Python、Kotlin等语言的特性,但Java编译器会把amount当成一个未定义的变量,同时冒号的存在打乱了方法调用的语法结构,所以才会抛出"amount无法解析"和") expected"的错误。

修正方法

只需要去掉参数名和冒号,直接传递数值即可,因为Java方法是按参数定义的顺序来匹配的,deposit方法的第一个参数就是amount,编译器会自动把传入的10赋值给它:

public class Main { 
    public static void main(String[] args) { 
        Account account=new Account(); 
        // 修正:去掉amount:,直接传值
        account.deposit(10); 
        System.out.println(account.getBalance()); 
    } 
}

可选的代码可读性优化

如果你想让代码更清晰,明确传递的是存款金额,可以先把值赋值给一个有意义的变量,再传入方法:

public class Main { 
    public static void main(String[] args) { 
        Account account=new Account(); 
        float depositAmount = 10;
        account.deposit(depositAmount); 
        System.out.println(account.getBalance()); 
    } 
}

注意:Java 21及以上版本提供了命名参数预览特性,但需要通过编译参数开启(--enable-preview),并且这还不是正式稳定的特性,所以在常规开发中还是推荐使用按顺序传参的方式。

内容的提问来源于stack exchange,提问作者shafigh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 11:12:59