On 24 November 2010 14:47, Alasdair Nottingham <[email protected]> wrote:

> I find !!! is obviously odd where !!!!! and !!!!!!! are not. I could
> go for == false, but I've always thought that makes it look as if you
> don't realize Java has a boolean data type. I also expect it is more
> byte code.


sigh, save us from premature optimization ;)

you'll be happy to know that both !, !!!, and == false compile down to the
same single bytecode operation

On 24 November 2010 14:31, David Bosschaert <[email protected]>
> wrote:
> > Ok - so at least no magic stuff happening that I wasn't aware of :)
> >
> > One could argue that !!!!! is even more visible or !!!!!!! or !!!!!!!!
> > - hold on? did I forget one '!' ? ;)
> > If you're going for explicit, Stuart's suggestion of == false is
> > probably a little safer...
> >
> > Cheers,
> >
> > David
> >
> > On 24 November 2010 14:10, Timothy Ward <[email protected]> wrote:
> >>
> >> You'll find quite a few of these littered around the Aries codebase.
> It's a bad habit I picked up from Alasdair ;)
> >>
> >> I actually like it, it's nearly as concise as !, but much easier to spot
> and obviously different from !!!! or !!
> >>
> >> Regards,
> >>
> >> Tim
> >>
> >> ----------------------------------------
> >>> From: [email protected]
> >>> Subject: Re: Why !!! in "if(!!!clazz.isInterface())" ?
> >>> Date: Wed, 24 Nov 2010 14:01:37 +0000
> >>> To: [email protected]
> >>>
> >>> Hi,
> >>>
> >>> It is equivalent to if(!clazz.isInterface()), but in my view is more
> visible. The compiler even optimises it to a single negation.
> >>>
> >>> I find it really helps as I often mis a single ! when reading code.
> >>>
> >>> Alasdair
> >>>
> >>> On 24 Nov 2010, at 13:18, David Bosschaert  wrote:
> >>>
> >>> > Hi all,
> >>> >
> >>> > While looking around in some of the Aries codebase I found the
> >>> > following line of code [1]:
> >>> >
> >>> > if(!!!clazz.isInterface()) { //...
> >>> >
> >>> > Isn't this equivalent to if(!clazz.isInterface()) ? Or is there some
> >>> > special magic happening here that I haven't seen before?
> >>> >
> >>> > Just curious...
> >>> >
> >>> > Cheers,
> >>> >
> >>> > David
> >>> >
> >>> > [1]
> http://svn.apache.org/repos/asf/incubator/aries/trunk/proxy/proxy-impl/src/main/java/org/apache/aries/proxy/impl/AsmProxyManager.java
> >>
> >
>
>
>
> --
> Alasdair Nottingham
> [email protected]
>



-- 
Cheers, Stuart

Reply via email to