> NB my stanza for repeatedly writing non-null checks is:

>  if( stringToCompare == null )
>      stringToCompare = "";
>  if( stringToCompare.equals("something") ) {
>      ...
>  }

becomes:

   0 aload_0
   1 ifnonnull 7
   4 ldc #2 <String "">
   6 astore_0
   7 aload_0
   8 ldc #3 <String "something">
  10 invokevirtual #4 <Method boolean equals(java.lang.Object)>
  13 ifeq ...
     ...

   if("something".equals(stringToCompare) ) {
      ;
   }

becomes:

   0 ldc #3 <String "something">
   2 aload_0
   3 invokevirtual #4 <Method boolean equals(java.lang.Object)>
   6 ifeq ...
     ...

In terms of clock cycles, if the value to be compared is null, your way is
20% slower.  It is about 10% slower if the value to be compared is "" or a
non-matching valid string.  It is only marginally slower if the values are
equal.

        --- Noel

Reply via email to