![](/img/trans.png)
[英]How to call a java method by clicking a button in JSP and also pass parameter?
[英]How to call a method and pass parameter in java?
该代码在下面列出。 因此,我期望输出为{2 4 6 8 10},但是,当我对其进行测试时,结果为{1 2 3 4 5}。 我现在很困惑,谁能告诉我为什么? 谢谢!
public class practice{
public void doubler(int[] a)
{
int[] b = new int[a.length];
for(int i = 0; i< a.length; i++)
{
b[i] = 2*a[i];
}
a = b;
}
public static void main(String[] args)
{
int[]c = {1,2,3,4,5};
Practice w = new Practice();
w.doubler(c);
for(int count = 0; count<c.length; count++)
{
System.out.print(c[count] + " ");
}
}
}
由于双重无效方法跟随无效
int[] s=w.doubler(c);
因为它类似于
int[] s= void; // wrong
更改方法的返回类型
public int[] doubler(int[] a)
方法完成后立即返回数组b
我认为这对您有帮助,
public class practice{
public int[] doubler(int[] a)
{
int[] b = new int[a.length];
for(int i = 0; i< a.length; i++)
{
b[i] = 2*a[i];
}
return b;
}
public static void main(String[] args)
{
int[]c = {1,2,3,4,5};
Practice w = new Practice();
int[] s=w.doubler(c);
for(int count = 0; count<s.length; count++)
{
System.out.print(s[count] + " ");
}
}
}
我的情况是,您没有将乘法数组返回给int[] s
。
将方法doubler
更改为:
public int[] doubler(int[] a)
{
int[] b = new int[a.length];
for(int i = 0; i< a.length; i++)
{
b[i] = 2*a[i];
}
return b;
}
这将为您提供新的数组b
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.