I would like to know is there any difference in performance between these two codes.
String sample="hello";
if(sample!=null)
{
if(!sample.equals(""))
{
// some code in here
}
}
or
String sample="hello";
if(sample!=null && !sample.equals(""))
{
// some code in here
}
As far as i have understood, in the first code, if sample is not null then only it will go in to the block. same is the case with 2nd piece of code.
What i would like to know is what is the difference in performance or better coding standards and why?
If you’re asking about performance you should always measure. But No, there shouldn’t be a difference. Besides, if that is your only performance-problematic code then I envy you, seriously.
As for coding standards. Less nesting is almost always nicer to read and follow. Which means that putting both in a single
if, especially since they are related is preferrable. The patternis very common and thus much less surprising than another nested
if.EDIT: To back it up:
I have the two little methods:
which produce the following code:
So apart from an extraneous
elsejump target the code is identical. If you don’t even have theelse:then the result is really the same: