2016-03-20 2 views
0

Я пытаюсь написать метод, чтобы загладить первое слово каждого элемента в arraylist. Так что, если ArrayList является:Заглавная буква в ArrayList с использованием ListIterator

"мэри был барашек"

Это нужно было бы менять каждый элемент:

"Mary Had A Little Lamb"

Это код, и это единственный способ, которым я могу его скомпилировать. Каждый другой способ дает мне ошибку, в которой говорится, что он не может преобразовать объект в строку.

public static void capitalize(List<String> words) 
{ 
    String str = ""; 
    ListIterator iter = words.listIterator(); 
    while (iter.hasNext()) 
    { 
     str = iter.next() + ""; 
     str.toUpperCase(); 
     iter.set(); 
    } 
} 

Надеюсь, что было достаточно ясным. Благодаря

+0

* Все другие Кстати, как? –

+0

Не забудьте использовать 'ListIterator ' предпочтительно –

ответ

3

Поскольку строки объекты Dont мутировать это не работает:

str.toUpperCase(); 

изменения становятся сделано, но заблудиться слишком

вы должны сделать:

str = str.toUpperCase(); 
+0

Wow спасибо, не думал, что я пропущу что-то такое простое. – KyleAK

+0

@KyleAK Вы можете отметить ответ, как принято сейчас. :) –

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