Здравствуйте, Tricks_Ter, Вы писали:
T_T>T_T>public String toString() {
T_T> //Экономим на создании итератора, когда он не нужен, да и читаемость выше, на мой взгляд
T_T> if(isEmpty())
T_T> return "[]";
T_T> StringBuilder sb = new StringBuilder();
T_T> sb.append('[');
T_T> //Не понимаю, почему используется конструкция for(;;), а не хотя бы while(i.hasNext())
T_T> for(E e: this)
T_T> {
T_T> sb.append(e == this ? "(this Collection)" : e);
T_T> sb.append(", ");
T_T> }
T_T> return sb.append(']').toString();
T_T>
Прирост производительности будет не заметен, если вообще будет. И в вашем коде, даже после последнего элемента будет запятая ([a,b,c,]).