gpt4 book ai didi

Java - 将动态数量的参数传递给 Formatter.format() 函数

转载 作者:行者123 更新时间:2023-11-30 07:39:46 29 4
gpt4 key购买 nike

是否可以将动态数量的参数传递给Formatter.format()函数?我想将字符串数组中的所有字符串传递给 format() 函数。
像这样的事情,

Formatter format;
format.format("FormatString" , "someString" , arrayOfString[0] , arrayOfString[1] , ... , arrayOfString[n] , "anotherString" );

最佳答案

动态参数基本上是一种语法糖,用于将参数数组传递给函数。在内部,动态参数是一个数组。

public Formatter format(String format, Object ... args)

基本相同
public Formatter format(String format, Object[] args)

除了在前一种情况下,您不必手动构建数组,编译器会为您做这件事。但仍然可以传递参数数组,就好像该方法是使用后一种语法编写的一样。

因此,您可以构建自己的动态参数数组,其中包含要传递的所有参数:

String[] arrayOfString;

Object[] arguments = new Object[arrayOfString.length + 2];
int argIndex = 0;
arguments[argIndex++] = "someString";
for (int i = 0; i < arrayOfString.length; i++) {
arguments[argIndex++] = arrayOfString[i];
}
arguments[argIndex++] = "anotherString";

Formatter formatter = new Formatter();
formatter.format("FormatString", arguments);

关于Java - 将动态数量的参数传递给 Formatter.format() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34848295/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com