Использование StrSubstitutor для подстановки значений массива
Я пытаюсь использовать API StrSubstituor для замены значений массива. Пока что это просто заканчивается заменой значения 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);
Результат должен быть:
Hello World StrSubstitutor APIs.
Тем не менее, теперь он печатает что-то вроде:
[Ljava.lang.String;@4c011fe StrSubstitutor APIs.
Дайте мне знать, если вам нужна дополнительная информация. Любые указатели будут с благодарностью. Если это не способ сделать это, пожалуйста, предложите, как лучше всего это сделать. Извините, если я полностью ошибаюсь.
1 ответ
Решение
Тем не менее, теперь он печатает что-то вроде:
[Ljava.lang.String; @ 4c011fe API-интерфейсы StrSubstitutor.
Кажется, вы пытаетесь распечатать String[]
, Попробуй использовать Arrays.toString()
,
В вашем посте вам нужно заменить эту строку:
valuesMap.put("greeting", greetings);
С этим:
valuesMap.put("greeting", Arrays.toString(greetings));