commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sebb (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LANG-922) Add isOneTrue(booleans...) to BooleanUtils to preserve old behavior of BooleanUtils.xor(booleans...)
Date Fri, 18 Oct 2013 17:30:46 GMT

    [ https://issues.apache.org/jira/browse/LANG-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13799319#comment-13799319
] 

Sebb commented on LANG-922:
---------------------------

bq. To implement the idea of isExactlyOneTrue() you would have to scan the entire array.

Not true; the scan can be aborted as soon as a second true entry is found.

And again, in the majority case it would be possible to terminate the scan early for almost
all cases (would only need to scan the whole array if all the true values were at the end
and there was only just a majority)

> Add isOneTrue(booleans...) to BooleanUtils to preserve old behavior of BooleanUtils.xor(booleans...)
> ----------------------------------------------------------------------------------------------------
>
>                 Key: LANG-922
>                 URL: https://issues.apache.org/jira/browse/LANG-922
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.*
>            Reporter: Benedikt Ritter
>            Assignee: Benedikt Ritter
>             Fix For: 3.2
>
>
> The old implementation (prior to r1532476) of BooleanUtils.xor(boolean...) checked if
the provided array contained exactly one boolean with value true. This was changed because
it is not the correct behavior for an XOR operation. To preserve the behavior we should add
BooleanUtils.isOneTrue(boolean...) and BooleanUtils.isOneTrue(Boolean...) (and possibly the
equivalents for isOneFalse).



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message