2015-06-18 3 views
0

Я хочу сообщить groupsId в 1,2,3 Но мой код с запятой в первую очередь. ,1,2,3 Как отредактировать это?Список строк без первой запятой

groupsId = [1,2,3]  
    String id = ""; 
    for(int i = 0 ; i < groupsId.size() ; i++) 
    { 
     if(i>=0) 
      id += "," + groupsId.get(i); 
    } 

Кстати, если groupsId может быть формат (1,2,3) бы здорово

+2

if (i> 0) {// положить запятую} –

ответ

3

Проблема заключается ваша работа с 0-го индекса. Вы не хотите добавлять запятую в этом случае.

groupsID = [1,2,3]; //pseudo code for a List? 
String id = ""; 
for(int i = 0; i < groupsId.size(); i++) 
{ 
    if(i==0) 
     id += groupsId.get(i); 
    else 
     id += "," + groupsId.get(i); 
} 

Или, если вы можете гарантировать, что Ваша groupsId имеет длину больше, чем 0 ...

groupsID = [1,2,3]; //pseudo code for a List? 
String id = "(" + groupsId.get(0); 

for(int i = 1; i < groupsId.size(); i++) 
{ 
    id += "," + groupsId.get(i); 
} 
id+= ")"; 

вышеописанный пример также выводит элементы массива в круглые скобки (1,2,3), как просили. Вы должны иметь возможность объединить различия между этим решением и моим первым.

6

Если вы не хотите петли использования и петли обработки самостоятельно, пусть Java сделать это для вас:

Integer[] groupsId = {1,2,3}; 
String id = Arrays.deepToString(groupsId); 
id = id.replace("[", "(").replace("]", ")"); 

Good Luck.

+0

Очень эффективное решение, вы слишком часто не видите 'deepToString()'. – CubeJockey

+0

Спасибо @Trobbins – STaefi

+1

Я думаю, что у него есть список не массив – Hiru

Смежные вопросы