1. 程式人生 > >Java拼接字串時,去掉最後一個多餘的逗號(及不產生多餘的逗號)

Java拼接字串時,去掉最後一個多餘的逗號(及不產生多餘的逗號)

作者初學Java,遇到一道題:

已知一個List中存有若干人的姓名,如list=[tom jack smith nickel],要求將list中的所有姓名拼接成一個字串“tom,jack,smith,nickel”

在拼接字串時,可能會在字串最後多出一個逗號。下面註釋中提供了兩種解決方法。有錯誤或不完善之處歡迎提出來。

package com.java;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class TestFour {
	public static void main(String[] args) {
		List list = new ArrayList();
		list.add("tom");
		list.add("jack");
		list.add("smith");
		list.add("nickel");
/* 去掉最後一個多餘的逗號
		String s = "";
		Iterator it = list.iterator();
		while(it.hasNext()){
			String o = (String)it.next();
			s += o + ",";
			if(!it.hasNext()){
				StringBuffer s1 = new StringBuffer(s);
				s1 = s1.deleteCharAt(s1.length() - 1);
				s = s1.toString();
			}
		}
		System.out.print(s);
*/

		
/* 不產生多餘的逗號
		StringBuffer s = new StringBuffer();
		Iterator it = list.iterator();
		while(it.hasNext()){
			Object o = it.next();
			if(s.length() > 0){
				s.append(",");
				s.append(o);
			} else{
				s.append(o);
			}	
		}
		String ss = s.toString();
		System.out.println(ss);
*/
	}
}