参数和参数有啥区别? [复制]
Posted
技术标签:
【中文标题】参数和参数有啥区别? [复制]【英文标题】:what is the difference between parameters and arguments? [duplicate]参数和参数有什么区别? [复制] 【发布时间】:2020-05-25 04:06:51 【问题描述】:我正在为学校做作业,并弄乱了一些不同类型的循环,即 for 循环...我很好奇它接受的项目是否被视为参数或参数...实际是什么两者的区别?
for(初始化;条件;递增/递减) 声明
【问题讨论】:
你的课件应该涵盖两者的区别。如果没有,请让您的老师在课堂上解释这一点,因为班上的每个人都应该被告知有什么区别。不只是你。 它们既不是参数也不是参数,因为for
不是函数/方法。它们是表达式。
@jarmod 他们不是所有的表达式。只有Expression
是一个表达式; ForInit
和 ForUpdate
是语句。
我了解这个想法是如何产生的,但请注意,for(a;b;c)...
使用 ;
而不是 ,
。很久以前,我听到我的教授们在谈论形式参数和实际参数,这可能是主题的变体。
@AndyTurner 好的,从技术上讲,ForInit 可以是语句表达式列表或局部变量声明,而 ForUpdate 可以是语句表达式列表。尽管for
上的 Java 教程松散地调用了所有 3 个表达式(每个 docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html)。
【参考方案1】:
如Java Docs中提到的:
Parameters 指的是方法声明中的变量列表。 Arguments 是方法执行时传入的实际值 调用。调用方法时,使用的参数必须与 声明的参数类型和顺序。
例如moveCircle()
方法在声明中有 3 个 参数,例如:circle
、deltaX
、deltaY
。
public void moveCircle(Circle circle, int deltaX, int deltaY)
//...
例如moveCircle()
方法被调用并有 3 个参数:
moveCircle(myCircle, 23, 56)
如果我们谈论循环,那么我们有 the general form of the for statement 喜欢:
for (initialization; termination;
increment)
statement(s)
在哪里:
initialization 表达式初始化循环;它被执行了 一次,作为循环开始。 终止表达式计算时 为假,循环终止。 increment 表达式被调用 在循环的每次迭代之后;这是完全可以接受的 这个表达式来增加或减少一个值。【讨论】:
【参考方案2】:参数是方法定义中的变量。调用方法时,参数是您传递给方法参数的数据。
请参考here 查看进一步讨论。
【讨论】:
以上是关于参数和参数有啥区别? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
python视角中的参数和参数有啥区别[不重复:)]? [复制]