我正在尝试创建一个方法,该方法将接受ArrayList上的String,然后将文本添加到每个字符串的开头。如果我有一个名为{jon,jimmy,kyle}的ArrayList。我希望该方法在名称前的字符串中放置“早安”。所以它将返回“早安,jon”,早安,吉米“,”早安,凯尔“。我已搜索并发现附加但似乎它是一个数组而不是一个数组名单。 我甚至找不到一个好的起点。任何帮助将不胜感激。谢谢。
代码真的没用,但至少是它的东西。
public adding(ArrayList<String> al)
{
StringBuilder us = new StringBuilder();
us.append("("+al[0]);
for(int i = 1; i < al.length;i++)
{
us.append("Good Morning, " + al[i]);
}
return us;
}
答案 0 :(得分:3)
字符串是不可变的。所以你必须在列表中再次设置值。
public void adding(ArrayList<String> al){
for(int i = 0; i < al.size();i++){
al.set(i,"Good Morning, "+al.get(i));
}
}
答案 1 :(得分:2)
试试这个
public void adding(ArrayList<String> al)
{
for(int i = 0; i < al.size();i++)
{
al.set(i,"Good Morning , "+al.get(i));
}
}
答案 2 :(得分:0)
见这个
http://docs.guava-libraries.googlecode.com/git-history/release/javadoc/com/google/common/base/Joiner.html#appendTo(A,java.lang.Iterable)
答案 3 :(得分:0)
您可以使用具有StringUtils类的Apache Commons Lang。它有一个join函数,它将数组连接在一起形成一个String。
示例:
String result="Good morning ";
result +=StringUtils.join(new String[] {"jon", "jimmy", "kyle"}, ", Good morning ");
join()函数接受Iterable对象,因此它也适用于列表。