覆盖toString以删除元素之间的空格

use*_*021 5 java overriding space tostring

如您所知,在Vector上调用的toString()方法输出this

[foo, bar, item, item4]
Run Code Online (Sandbox Code Playgroud)

这是非常基本的但是,我怎么能得到它(去除元素之间的空白)?

[foo,bar,item,item4]
Run Code Online (Sandbox Code Playgroud)

谢谢你们

编辑:return nom.toString().replace("",""); 不是解决方案!

cor*_*iKa 4

包装您的向量类并覆盖 toString。

import java.util.*;
class AwesomeVector<E> extends Vector<E> {

    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("[");
        for(int i = 0; i < size(); i++) {
           if(i != 0) sb.append(","); 
           sb.append(get(i));
        }
        sb.append("]");
        return sb.toString();
    }

    public static void main(String[] args) {
        AwesomeVector<String> av = new AwesomeVector<String>();
        av.add("This");
        av.add("is");
        av.add("a test");
        System.out.println(av.toString());
    }

}


C:\Documents and Settings\glowcoder\My Documents>javac AwesomeVector.java

C:\Documents and Settings\glowcoder\My Documents>java AwesomeVector
[This,is,a test]
Run Code Online (Sandbox Code Playgroud)