師匠、&&は if (条件式1 && 条件式2) みたいな使い方をするんですよ。
この場合、条件式1を満たしていて、かつ条件式2も満たす場合、となります。
つまり、2つ以上の条件を満たしたい場合に必要って訳です。

例えばnum1よりnum2が大きい場合であれば、num1 < num2 と書きますよね?
その場合の num1 < num2 が条件式。
で、加えてnum2がnum3より小さいかも判別したいとします。
この場合の条件式は num2 < num3 ですね。

二つの条件式を満たす場合に処理をしたい場合、
if (num1 < num2) {
 if (num2 < num3) {
  /* 条件を満たしてます */
 }
}
これでも問題はないんですけど、&&があればスマートに書けちゃいます。
num1 < num2 を条件式1、num2 < num3 を条件式2として、
このレス1行目のif()みたいな書き方をするんです。

if (num1 < num2 && num2 < num3) {
 /* 条件を満たしてます */
}
これで、上のif()2つのと同じ意味となります。