commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: Bug in StringUtils.equals()
Date Wed, 31 Aug 2011 11:54:48 GMT
On 31 August 2011 06:45, Henri Yandell <flamefew@gmail.com> wrote:
> On Tue, Aug 30, 2011 at 1:59 PM, sebb <sebbaz@gmail.com> wrote:
>> On 30 August 2011 19:08,  <e_reinus@web.de> wrote:
>>> Hi All,
>>>
>>> i found a Bug in lang3. This tests are failed:
>>>
>>> Assert.assertTrue(org.apache.commons.lang3.StringUtils.equals(new StringBuffer(""),
new StringBuffer("")));
>>> Assert.assertTrue(org.apache.commons.lang3.StringUtils.equals(new StringBuffer("123"),
new StringBuffer("123")));
>>
>> The CharSequence interface does not define equals(), so only concrete
>> implementations that provide one (such as String) will use anything
>> other than Object.equals().
>>
>> I don't think this is a bug though perhaps the Javadoc could be clearer.
>
> I think a warning in StringUtils.equals that StringBuffer and
> StringBuilder don't implement equals as you'd expect and to call
> toString before calling such would be valuable.
>
> I think it's weird that the JDK doesn't do a real equals, but I don't
> think it's something we should try to fix.

It's a bit odd that StringUtils.equals() accepts CharSequence, but the
code is really only useful for String objects.
Perhaps it was a mistake to change the parameter type...

After all, the class is called StringUtils.

Would it be useful to add a CharSequenceUtils method to compare
CharSequence objects?
Could have equals() and equalsIgnoreCase().
Those would call toString() first.

> Hen
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message