Как я могу сказать для последней записи, что я хочу добавить "." Вместо запятой? - PullRequest
0 голосов
/ 14 декабря 2011

это мой код, я вижу здесь, я добавляю запятую между каждой строкой.в последнем ряду я хочу добавить точку с запятой вместо запятой, есть идеи, как мне это сделать?

while(!cursor2.isAfterLast()) {
String mIngredientName = cursor2.getString(1) + ", " ;
                al.add(mIngredientName);
                cursor2.moveToNext();
            }

У меня есть идея в том, что она включает в себя, если заявления, но я не уверен, какие-либо указания?

Ответы [ 4 ]

1 голос
/ 14 декабря 2011
while(!cursor2.isLast()) {
String mIngredientName = cursor2.getString(1) + ", " ;
                al.add(mIngredientName);
                cursor2.moveToNext();
            }
String mIngredientName = cursor2.getString(1) + ". " ;
                al.add(mIngredientName);
1 голос
/ 14 декабря 2011

Вы сейчас тестируете на "if isAfterLast ()".Вместо этого (или дополнительно - ваш выбор) проверьте «if isLast ()».Все до того, как isLast () получает запятую, isLast () получает точку ... и затем закрывает курсор.

ПРИМЕР:

while(!cursor2.isLast()) {
  String mIngredientName = cursor2.getString(1) + ", " ;
  al.add(mIngredientName);
  cursor2.moveToNext();
}
String mIngredientName = cursor2.getString(1) + "." ;
al.add(mIngredientName);
0 голосов
/ 14 декабря 2011

Следующее отлично работает и для "рецептов" только с одним ингредиентом (!):

cursor2.moveToFirst();
StringBuilder strBuilder = new StringBuilder(cursor2.getString(1)); 
while(!cursor2.isLast()){
    cursor2.moveToNext();
    strBuilder.append(", ").append(cursor2.getString(1));
}
strBuilder.append('.');

String allIngredients = strBuilder.toString();

Обратите внимание, что использование StringBuilder более эффективно для конкатенации строк.

0 голосов
/ 14 декабря 2011
while(!cursor2.isAfterLast()) {
  char delimitor = (if !cursor2.isLast())? "," : ".";
  String mIngredientName+= cursor2.getString(1) + delimitor ;
  al.add(mIngredientName);
  cursor2.moveToNext();
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...