commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Mazursky (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (LANG-990) Avoid String allocation in StrBuilder.append(CharSequence)
Date Sun, 30 Mar 2014 09:10:16 GMT

     [ https://issues.apache.org/jira/browse/LANG-990?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Mikhail Mazursky updated LANG-990:
----------------------------------

    Attachment: LANG-990-v3.patch

> Avoid String allocation in StrBuilder.append(CharSequence)
> ----------------------------------------------------------
>
>                 Key: LANG-990
>                 URL: https://issues.apache.org/jira/browse/LANG-990
>             Project: Commons Lang
>          Issue Type: Improvement
>          Components: lang.text.*
>    Affects Versions: 3.3.1
>            Reporter: Mikhail Mazursky
>             Fix For: Patch Needed
>
>         Attachments: LANG-990-v2.patch, LANG-990-v3.patch, LANG-990.patch
>
>
> StrBuilder.append(CharSequence) and StrBuilder.append(CharSequence, int, int) can be
optimized for the case when CharBuffer is passed. Current implementation calls toString()
method that allocates a new String. In case when CharBuffer.hasArray() returns true the buffer-backing
char array can be accessed directly to copy chars from it.
> Also an instanceOf StrBuilder check can be added to StrBuilder.append(CharSequence) and
StrBuilder.append(CharSequence, int, int) to avoid toString() in that case too (StrBuilder
can be passed as CharSequence in some cases).



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message