2

私は以下のこの基本的なコードに苦労しています、

最後のコンマ「、」が文字列に追加されないようにするにはどうすればよいですか。

    String outScopeActiveRegionCode="";

    List<String> activePersons=new ArrayList<String>();

    HashSet<String> outScopeActiveRegionCodeSet=new HashSet<String>();

    for (String person : activePersons) {

       outScopeActiveRegionCodeSet.add(person); 

    }
       Iterator itr = outScopeActiveRegionCodeSet.iterator();

             while(itr.hasNext()){
                outScopeActiveRegionCode+=itr.next();
                outScopeActiveRegionCode+=",";
             }
4

2 に答える 2

6

実際には逆の方法で行います。最初のケースを除くすべてのケースで、前にコンマを追加する方が簡単です。

boolean isFirst = true;
while(itr.hasNext()) {
    if(isFirst) {
        isFirst = false;
    } else {
        outScopeActiveRegionCode+=",";
    }
    outScopeActiveRegionCode+=itr.next();
}

この理由は、最後のケースよりも最初のケースを検出する方がはるかに簡単だからです。

于 2012-07-18T15:51:12.060 に答える
2

私はします:

String delimiter = "";

while(itr.hasNext()){
    outScopeActiveRegionCode += delimiter;
    outScopeActiveRegionCode += itr.next();
    delimiter = ",";
}
于 2012-07-18T15:59:42.293 に答える