java - 如果我删除 int 和 number 之间的点,为什么会出现错误?
问题描述
//后面的点是什么意思?
static void add(int...numbers) {
int sum = 0;
for(int num:numbers)
{
if(sum !=0){
System.out.print("+");
}
sum+=num;
System.out.print(num);
}
System.out.println("="+sum);
}
解决方案
如果我删除 int 和 number 之间的点,为什么会出现错误?
点表示这是一个“可变参数”参数;即你可以有多个值;请参阅Java 中参数类型旁边的 3 个点是什么意思?
因此,numbers
您示例中的实际类型位于int[]
方法主体内。
因此,当您删除 时...
,类型将更改为int
。这意味着
for(int num:numbers)
无效,因为单个int
是不可迭代的。
推荐阅读
- swift - 从 timeZoneOffset 字符串创建 TimeZone 对象?
- node.js - 如何通过powershell在自定义目录中安装node.js?
- laravel - 切换复选框的输入字段中的@if条件 - Laravel
- xml - Cobol xml 解析出现异常
- javascript - 访问 react-chartjs 饼图的一部分
- jquery - Opencart 3 网格系统 Undestand 类别网格视图
- ios - 尽管 Firebase 深层链接成功打开应用程序,但未调用“继续 userActivity”方法
- ios - 使用firebase聊天时如何从下到上设置数据
- outlook - Outlook 插件文档:位置和电子邮件用户的格式
- swift - 如何在swiftUI中忽略具有线性渐变的背景的安全区域?