-  Μπορούμε να εκτελέσουμε ορισμένες εντολές υπό συνθήκη με τη
δομή ελέγχου if.
 -  Αυτή χρησιμοποιείται ως εξής:
        if (συνθήκη)
                εντολή;
 -  Όπως και με τις εντολές while και do όταν θέλουμε να εκτελέσουμε πάνω
από μια εντολή υπό συνθήκη περικλείουμε όλες τις αντίστοιχες εντολές μέσα σε
αγκύλες "{" και "}":
        if (συνθήκη) {
                εντολή1;
                εντολή2;
                εντολή3;
        }
 -  Οι εντολή που ακολουθεί το if εκτελείται αν η συνθήκη είναι
αληθής.
Παράδειγμα (υπολογίζει και τυπώνει την απόλυτη τιμή των αριθμών που διαβάζει
μέχρι να συναντήσει το 0):
import gr.aueb.dds.BIO;
class MakePositive {
        public static void main(String args[]) {
                int num;
                do {
                        num = BIO.readInt();
                        if (num < 0)
                                num = -num;
                        BIO.println(num);
                } while (num != 0);
        }
}
 -  Η δομή ελέγχου if μπορεί να ακολουθηθεί και από τη δομή else
για να προσδιορίσουμε εντολές που θα εκτελεστούν αν η συνθήκη δεν
ισχύει.
Παράδειγμα:
        if (grade >= 5)
                BIO.println("Περνάει");
        else
                BIO.println("Απορρίπτεται");
 -  Χρειάζεται προσοχή όταν η else ακολουθεί δύο συνεχόμενες if.
Στην περίπτωση αυτή, η else συσχετίζεται με την κοντινότερη if.
Για να εκφράσουμε διαφορετική συσχέτιση πρέπει να χρησιμοποιήσουμε 
αγκύλες { }.
Παράδειγμα (τυπώνει μόνο όταν η μεταβλητή printed είναι ψευδής):
        if (exam >= 5) {
                if (!printed)
                        BIO.println("Περνάει");
        } else
                if (!printed)
                        BIO.println("Απορρίπτεται");
        printed = true;
Το παρακάτω παράδειγμα (χωρίς αγκύλες) δεν εκτελείται σύμφωνα με τον
τρόπο που είναι στοιχισμένο
        if (exam >= 5)
                if (!printed)
                        BIO.println("Περνάει");
        else
                if (!printed)
                        BIO.println("Απορρίπτεται");
        printed = true;
αλλά ως εξής (δεν τυπώνει ποτέ "Απορρίπτεται"):
        if (exam >= 5)
                if (!printed)
                        BIO.println("Περνάει");
                else
                        if (!printed)
                                BIO.println("Απορρίπτεται");
        printed = true;
 -  Μπορούμε να συνδυάσουμε συνεχόμενα else if για πολλαπλούς
ελέγχους.  Παράδειγμα:
        if (grade >= 9)
                BIO.println("'Αριστα!");
        else if (grade >= 7)
                BIO.println("Λίαν καλώς");
        else if (grade >= 5)
                BIO.println("Καλώς");
        else
                BIO.println("Κακώς");