Java 앱에서 작업하는 동안 최근에 쉼표로 구분 된 값 목록을 어셈블하여 얼마나 많은 요소가 사전에 있는지 모르면서 다른 웹 서비스에 전달해야했습니다. 내가 머리 꼭대기에서 내릴 수있는 최선은 다음과 같습니다.
public String appendWithDelimiter( String original, String addition, String delimiter ) {
if ( original.equals( "" ) ) {
return addition;
} else {
return original + delimiter + addition;
}
}
String parameterString = "";
if ( condition ) parameterString = appendWithDelimiter( parameterString, "elementName", "," );
if ( anotherCondition ) parameterString = appendWithDelimiter( parameterString, "anotherElementName", "," );
나는 모든 곳에서 문자열이 생성되기 때문에 이것이 효율적이지 않다는 것을 알고 있지만 최적화보다 명확성을 추구했습니다.
루비에서는 대신 다음과 같이 할 수 있습니다.
parameterArray = [];
parameterArray << "elementName" if condition;
parameterArray << "anotherElementName" if anotherCondition;
parameterString = parameterArray.join(",");
그러나 Java에는 join 명령이 없기 때문에 동등한 것을 알아낼 수 없었습니다.
Java에서 이것을 수행하는 가장 좋은 방법은 무엇입니까?