Java 使用StrSubstitutor替换数组值

Java 使用StrSubstitutor替换数组值,java,arrays,apache-commons-lang,Java,Arrays,Apache Commons Lang,我正在尝试使用StrSubstituor API替换数组值。到目前为止,它只是替换了array.toString值 String[] greetings = {"Hello", "World"}; Map<String, String[]> valuesMap = new HashMap<String, String[]>(); valuesMap.put("greeting", greetings); String templateString = "${gr

我正在尝试使用StrSubstituor API替换数组值。到目前为止,它只是替换了array.toString值

String[] greetings = {"Hello", "World"};    
Map<String, String[]> valuesMap = new HashMap<String, String[]>();
valuesMap.put("greeting", greetings);

String templateString = "${greeting} StrSubstitutor APIs.";
StrSubstitutor sub = new StrSubstitutor(valuesMap);
String resolvedString = sub.replace(templateString);
但是,现在它会打印如下内容:

[Ljava.lang.String;@4c011fe StrSubstitutor API。
如果您需要更多信息,请告诉我。如果您有任何建议,我们将不胜感激。如果这不是最好的方法,请建议最好的方法。对不起,如果我在这一点上完全错了

但是,现在它会打印如下内容:

[Ljava.lang.String;@4c011fe StrSubstitutor API

您似乎正在尝试打印
字符串[]
。请尝试使用
数组。toString()

在您的帖子中,您需要替换以下行:

valuesMap.put("greeting", greetings);
为此:

valuesMap.put("greeting", Arrays.toString(greetings));
可能重复的