Che dire, scanner è una classe scorciatoia. Gestisce anche i primitivi, ma usa anche le stringhe. Forse ti chiedevano qualcosa più performante.
Ho letto da questo link:
http://antoniotancredi.altervista.org/2010/04/07/java-la-classe-java-util-scanner/
La classe Scanner, definita nel package java.util, rappresenta un scanner di testo capace di riconoscere i tipi primitivi e le stringhe, utilizzando le espressioni regolari.
La stringa viene divisa in token utilizzando un separatore che, solitamente, è lo spazio.
I token possono essere converiti in differenti tipi utilizzando i metodi next (ad esempio, nextInt, nextDouble).
Per testare, invece, la presenza di ulteriori token, possiamo utilizzare i metodi hasNext.
Magari era preferibile trattare direttamente gli interi.
In laboratorio cosa avete usato?