Java中,啥情况要用到带参的方法?怎么给形参赋值?怎么输出带参方法返回来的值呢?请举个简单例了和我

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中,啥情况要用到带参的方法?怎么给形参赋值?怎么输出带参方法返回来的值呢?请举个简单例了和我相关的知识,希望对你有一定的参考价值。

需要对数据进行处理时,就要用到带参的方法。
比如先定义一个方法。
class A
public int sum(int a, int b)
return a+b;


class B
public static void main(String[] args)
int a = 3;
int b = 4;
int result = 0;
A aObj = new A();
result = aObj.sum(a, b);//这里求a,b的和,当然,sum里面也可以定义更复杂的运算。

参考技术A public static void main(String args[])
//比如我现在要实现一个功能。输入一个数求平方
Scanner input=new Scanner(System.in);
int num=input.nextInt();

/*这里封装一个方法,这个方法的用途是求平方。
* 我们根据每次传入的数,返回平方。
* 好了,这里你可以看到。。。我们需要传入一个不确定的数(所以确定一个参数)
* 同时我们还需要根据这个数求出平方,也就是需要一个结果(需要返回值)
*
*/
int result=fun(num);
System.out.println( num + "的平方是:" + result);

//用静态写的一个方法。如果不重新写个类的话,最好直接这样。或者你写非静态也行,通过 new Test().fun(num); Test是你的测试类的名字
public static int fun(int num)
return num*num;
参考技术B public class A

public int m1=0;
public char m2[]="";
public int setm1(int a)
this.m1=a;
return a;

public static main()
A a=new A();
int i=0;
i=a.setm1(3);
out.println(i);
out.println(\n);

参考技术C 当你需要一个鸡蛋的时候你首先要有一只鸡,这个鸡蛋就是 返回的值,鸡就相当于传入的参数,产蛋的方法就是函数,

class A
public static void main(string [] args)

int chandan(string b)
return "经过对鸡这个参数的操作返回结果一个鸡蛋"

string a=chandan("一只鸡");
system.out.println(a);

输出结果便是经过对鸡这个参数的操作返回结果一个鸡蛋
参考技术D class gouzao
int a,b;
Canvas canvas;
public gouzao(int x,int y,Canvas canvas)

this.a = x;
this.b = y;
this.canvas = canvas;
function(5);

public void function(int x)

System.out.println(x);

public static void main(String[] args)
Canvas c = new Canvas();
new gouzao(1,2,c);


这样写才是对的。 这段代码不能运行,因为没有Canvas的定义,你可以把写一个Cavnas类,就可以了。看程序,其实形参实参定义真的不重要,只是名字而已,public gouzao(int x,int y,Canvas canvas)里面的叫形参,gouzao(1,2,c);里面的叫实参,至于为什么这是取名子的人写的,用不着纠结,学编程跟学其他的不一样,最忌纠结没用的定义,但是我认为这个例子重要的是过程调用和构造函数,构造函数是new gouzao(1,2,c)这句话要调用的函数,这个函数把gouzao这个类的a,b,canvas成员变量赋值,然后调用了function,所以当你 new gouzao(1,2,c);时,会输出5.就是把5这个变量传参到function,function使用这个x(现在值为5)

VBA的有参过程定义,形参用啥说明

VBA的有参过程定义,形参用什么说明

ByVal 与 ByRef(默认值)
这两个是子过程的参数传递时,指定参数按什么传递的
ByVal(按值传递)
ByRef(按地址传递)
具体这样来理解:
过程中的参数列表,我们称形参
调用过程时的参数列表,我们称实参

在调用时,我们要将实参的值传递给形参,这样过程才能拿这些数据参与计算并实现一些功能
那么在传递的过程中,就存在这两种传递方式
传值时(ByVal),是先给形参开辟一个临时地址,将实参的内容传入这个临时地址,这样,传递后,形参与实参是在两上不同的地址中,也就是说他们是相互独立的
传址时(ByRef),是直接将实参的地址传递给形参,这样,形参与实参就共用一个地址,所以,形参内容的改变,也直接改变了实参的内容

通过上面的分析,你只要记得:
按值传递时(ByVal),形参的改变不会影响到实参
按址传递时(ByRef),形参的改变,会影响到实参

应用时,我们可以利用按址传递的过程,给一个子过程(Sub过程)进行参数返回

例:
Dim A as integer,B as integer
A=1
B=2
Call AAA(A,B)
Print A & " " & B '得到的结果是2 3 (形参的改变影响到了实参)
Call BBB(A,B)
Pring A & " " & B '得到的结果跟上面的一样, 2 3 (形参的改变并没有影响到这个实参)

Sub AAA(i as integer, j as integer) '默认,则按址传递
i=i+1
j=j+1
End Sub

Sub BBB(ByVal i as integer, ByVal j as integer)
i=i+1
j=j+1
End Sub
参考技术A 形参是什么?

以上是关于Java中,啥情况要用到带参的方法?怎么给形参赋值?怎么输出带参方法返回来的值呢?请举个简单例了和我的主要内容,如果未能解决你的问题,请参考以下文章

带参数的方法

VBA的有参过程定义,形参用啥说明

在C语言中,函数实参与形参之间的数据传递方式是( )传递方式。

调用函数时为啥形参的值不能传给实参

java 强制类型转换的规则是啥?

形参与实参的区别,原来形参是庶子所以不得宠