使用 ListIterator 将 ArrayList 中的字母大写

Capitalizing the letter in ArrayList using ListIterator

我正在尝试编写一种方法来将数组列表中每个元素的第一个单词大写。所以如果数组列表是:

"mary had a little lamb"

需要将每个元素更改为:

"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();
    }
}

希望已经足够清楚了。谢谢

由于字符串对象不会发生变异,所以这是行不通的:

str.toUpperCase();

改变正在完成,但也正在迷失

你必须做的:

str = str.toUpperCase();