Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #8127

Re: StringBuilder

From Eric Sosman <esosman@ieee-dot-org.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: StringBuilder
Date 2011-09-18 09:50 -0400
Organization A noiseless patient Spider
Message-ID <j54svs$u9u$1@dont-email.me> (permalink)
References (2 earlier) <j52jgd$iij$1@dont-email.me> <vp7a77lp3e5oe4h79pnmv95vb4lu13spmc@4ax.com> <GeednbWNqODBGOjTnZ2dnUVZ_rqdnZ2d@posted.palinacquisition> <j54nc9$tgk$1@dont-email.me> <j54rss$j3q$1@news.albasani.net>

Show all headers | View raw


On 9/18/2011 9:32 AM, Jan Burse wrote:
> Eric Sosman schrieb:
>> I don't have old Java source, but I do have an old O'Reilly
>> book ("Java In a Nutshell, 2nd Edition, Covers Java 1.1, by David
>> Flanagan") that states
>>
>> The StringBuffer.toString() method does not copy the internal
>> array of characters; instead it shares that array with the
>> new String object, and makes a new copy for itself only when
>> further modifications are made to the StringBuffer object.
>>
>> Assuming the author was correct, it follows that the implementation
>> changed at some later point. Presumably, that change was driven by
>> evidence that the "optimization" wasn't worth while.
>
> I guess first of all probably a reengineering was done, and
> StringBuffer was split into AbstractStringBuilder and StringBuffer.
> And then StringBuilder was created. The class diagramm is basically:
>
> AbstractStringBuilder
> / \
> StringBuffer StringBuilder

     I do not know whether buffer-sharing was dropped before, after,
or with the introduction of StringBuilder.

> Most of the StringBuffer methods are synchronized and then delegate
> to the abstract super class. In StringBuilder the methods are
> non-synchronized and then also delegate to the abstract super class.

     Some methods delegate, some do not.  StringBuilder.toString()
in particular does not delegate to the superclass.

-- 
Eric Sosman
esosman@ieee-dot-org.invalid

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Re: StringBuilder Stanimir Stamenkov <s7an10@netscape.net> - 2011-09-17 19:56 +0300
  Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-17 20:35 +0200
  Re: StringBuilder Roedy Green <see_website@mindprod.com.invalid> - 2011-09-17 15:34 -0700
    Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 01:33 +0200
      Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 01:56 +0200
      Re: StringBuilder Roedy Green <see_website@mindprod.com.invalid> - 2011-09-17 20:58 -0700
    Re: StringBuilder Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2011-09-17 22:44 -0700
      Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 09:54 +0200
        Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 09:59 +0200
        Re: StringBuilder Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2011-09-18 07:28 -0700
      Re: StringBuilder Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-18 08:15 -0400
        Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 15:32 +0200
          Re: StringBuilder Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-18 09:50 -0400
            Re: StringBuilder Stanimir Stamenkov <s7an10@netscape.net> - 2011-09-18 17:08 +0300
            Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 22:13 +0200
              Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 22:29 +0200
                Re: StringBuilder Jan Burse <janburse@fastmail.fm> - 2011-09-18 22:39 +0200
      Re: StringBuilder Roedy Green <see_website@mindprod.com.invalid> - 2011-09-19 09:45 -0700

csiph-web