重写ArrayList及HashMap的toString


重写ArrayList
import java.util.AbstractCollection;
import java.util.Iterator;
class ArrayListSon<E> extends AbstractCollection<E> {
    
    public String toString() {
        Iterator<E> i = iterator();
	if (! i.hasNext())
	    return "[]";

	StringBuilder sb = new StringBuilder();
	sb.append('[');
	for (;;) {
	    E e = i.next();
	    sb.append(e == this ? "(this Collection)" : e);
	    if (! i.hasNext())
		return sb.append(']').toString();
	    sb.append("| ");
	}
    }

@Override
public Iterator iterator() {
	// TODO Auto-generated method stub
	return null;
}

@Override
public int size() {
	// TODO Auto-generated method stub
	return 0;
}
}


重写HashMap
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;


class ListOrderedMapSon<E> extends HashMap{
	
//重写HashMapSon类的toString()方法
	 public String toString()
	  {
	    if (isEmpty()) {
	      return "{}";
	    }
	    StringBuffer buf = new StringBuffer();
	    buf.append('{');
	    boolean first = true;
	    Iterator it = entrySet().iterator();
	    while (it.hasNext()) {
	      Map.Entry entry = (Map.Entry)it.next();
	      Object key = entry.getKey();
	      Object value = entry.getValue();
	      if (first)
	        first = false;
	      else {
	        buf.append("| ");
	      }
	      buf.append(key == this ? "(this Map)" : key);
	      buf.append('=');
	      buf.append(value == this ? "(this Map)" : value);
	    }
	    buf.append('}');
	    return buf.toString();
	  }
    
}

猜你喜欢

转载自love398146779.iteye.com/blog/1970847