如何将变量从一个参数化方法传递到另一个?



如何将变量从主方法发送到方法A,以及在方法B中我应该在A()中传递什么参数。

代码:

public class MethodCall {

public void A(String c) {

System.out.println(c);
}

public void B() {
A(); // What parameter do I pass here. method B is dependent on A

}
@Test
public void D() {
B();
MethodCall mc = new MethodCall();
mc.A("Hello");
}
}

的方法A你期望一个参数类型StringString因此你必须提供一个参数可以是一个空字符串""null


另一个选项取决于您的用例;您可以使用变量:

public void a(String... varargs) {...}

在这种情况下,可以给出0个或多个String类型的参数。

a("Hello World");

:

a();

还有这个

a("Hello", "World");

或者您可以将A所需的所有参数传递到B:

public class MethodCall {
public void A(String c) {
System.out.println(c);
}

public void B(String c) {
A(c);
}
@Test
public void D() {
MethodCall mc = new MethodCall();
mc.B("Hello World");
mc.A("Hello");
}
}

您应该在方法b中传递A()中的String参数

public class MethodCall {
public void A(String c) {

System.out.println(c);
}
public void B() {
A("Pass the String parameter"); 

}
public static void main(String[] args) {
// TODO Auto-generated method stub
MethodCall mc = new MethodCall();
mc.A("Hello");
mc.B();
}
}

当你传递String类型作为参数时,这意味着你应该在给参数值时使用相同的数据类型。你不能使用任何其他类型,如Integer, float等,你只需要传递字符串值给给定的参数。

当你使用非静态方法时,它不能直接调用。所以使用Static关键字直接调用方法

答案——

public class MethodCall {

public static void A(String c) {

System.out.println(c);
}

public static void B() {
A("HI "); //you can put `null` or `empty`

}
public static  void main(String[] args) {
B();
MethodCall mc = new MethodCall();
mc.A("Hello");
}
}

我对你的问题不太确定,但以下是我的看法:

public class MethodCall {
public void A(String c) {
System.out.println(c);
}
public void B(String s) {
A(s); //If you want to call A() here, then you would have to pass a variable in the parameters of A(), as A() is a parameterized method by definition.
}
public static void main(String[] args) {
// TODO Auto-generated method stub
MethodCall mc = new MethodCall();
mc.A("Hello"); //This part is right, that is how you pass value of a non static function through main method.
}

相关内容

  • 没有找到相关文章

最新更新