方法是数组类型时候,传入参数的一点小疑问
import java.util.Scanner; public class FloatDemo { public int plus(int a, int b) { return a + b; } public double plus(double a, double b) { return a + b; } public int plus(int[] a) { int sum = 0; for (int n : a) { sum += n; } return sum; } public static void main(String args[]) { FloatDemo fd = new FloatDemo(); int m = 10, n = 15; double a = 10.3, b = 14.7; int[] s = { 1, 2, 3, 4, 5, 6 }; System.out.println("整数相加和为:" + fd.plus(m, n)); System.out.println("浮点数相加和为:" + fd.plus(a, b)); System.out.println(fd.plus(1, 2)); System.out.println(fd.plus(1.2, 2.3)); // System.out.println(fd.plus({1,2,3})); } }
/最后一句报错,为啥参数是整数或者浮点数的时候,可以不定义变量,直接传入。但是参数的数组的时候,不能将数组直接传入。是因为数组是引用数据类型必须先定义变量才能使用吗?/
11
收起
正在回答
1回答
同学你好,并不是这样的。
数组和整数、浮点数等的数据类型有本质的区别,所以不能互相转化。那么当参数声明为整数的时候,传入数组就会参数不匹配,导致报错。这里与数组存储的数据类型无关,只要是数组,就会报错。这就像参数声明要求传入int类型,但实际想要传入String时是一样的,哪怕这个字符串真的是由纯数字构成,它的本质也是String而不是int,是无法匹配的。数组也是同理。
祝学习愉快~
Java工程师 2024版
- 参与学习 2020 人
- 提交作业 1249 份
- 解答问题 1202 个
2024重磅革新,超百小时内容豪华升级,加速提升高级技能与高薪就业竞争力 课程紧贴企业最新人才需求,历经7年持续迭代,帮助万名学子入行转行 从零起点到高阶实战,学习路径稳健顺滑,成就从小白到工程师高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星