One golden rule I follow is to “Avoid Nesting” as much as I can. But if it is at the cost of making my single if condition too complex, I don’t mind nesting it out.
Besides you’re using the short-circuit &&
operator. So if the boolean is false, it won’t even try matching!
So,
if (boolean_condition && matcher.find(string)) {
...
}
is the way to go!