Java: строитель строк - PullRequest
       5

Java: строитель строк

0 голосов
/ 08 ноября 2011

Я хочу добавить , к StringBuilder, если переменная a меньше длины массива.
Я увеличиваю переменную a каждый раз и использую следующий код:

for(int n=0;n<fieldMap.length();n++)
{
    int a=0;
    JSONObject object = fieldMap.getJSONObject(n);              
    String type= object.getString("type");
    String name= object.getString("name");

    createTable.append(name +" ");
    createTable.append(type);
    a++;

    if(!(a==(fieldMap.length()-1))) {
        createTable.append(",");
    }                       
}

Но в конце добавляется ,, чего я не хочу.Как я могу решить эту проблему?

Спасибо

1 Ответ

4 голосов
/ 08 ноября 2011

Инициализировать a вне цикла for:

int a=0;
for(int n=0;n<fieldMap.length();n++){

Или просто используйте n вместо a.

Вы также можете немного упростить свою логику, написав сначала запятую:

 for(int n=0; n < fieldMap.length(); n++){
     JSONObject object = fieldMap.getJSONObject(n);             
     String type = object.getString("type");
     String name = object.getString("name");

     if (n != 0) {
         createTable.append(",");
     }
     createTable.append(name + " ");
     createTable.append(type);
}  
...