如何将方法参数值直接存储到数组列表中,然后将其传递给另一个方法

问题描述 投票:0回答:1

以下是工作流程:

Class A{

    B obj_b = new B;

    String x= "abc";
    String y= "def";

    public void method_a(){
        obj_b.method_b(x,y);
    }  
}

Class B{

    C obj_c = new C;
    public String method_b(String Fname, String Lname){

        ArrayList<String> names = new ArrayList<String>();
        names.add(Fname);
        names.add(Lname);

        String qwerty=("Hello"+ obj_c.method_c(names));

    }
}

Class C{

    public String method_c(ArrayList<String> allElements){
        String xyz = MessageFormat.format(allElements.get(0),allElements.get(1));
        return xyz;
    }
}

我想做的是:

  1. 在B类中,将所有参数直接添加到ArrayList(即Fname和Lname到names数组列表)。参数的数量可能会有所不同。可能有一些其他方法调用带有3或4个参数的method_b(),这就是我使用ArrayList的原因。
  2. 然后在C类中,将数组列表中的每个元素(即名称)放在方法message()中,并用逗号分隔。

请建议是否可以采取更好的方法。

java arraylist
1个回答
0
投票

我想你需要这样的东西:

class B {
    C obj_c = new C();

    public void method_b(String... args) {
        List<String> names = Arrays.asList(args);
        String qwerty = "Hello " + obj_c.method_c(names);
    }
}

这样,您可以向method_b发送无限制的args。

希望这可以帮助!

© www.soinside.com 2019 - 2024. All rights reserved.