Alguem pode me explicar Scanner in;

Scanner in;

                    in = new Scanner(System.in);                         
                    
                    if(i==0) num1 = in.nextInt();                     
                    if(i==1) num2 = in.nextInt();   
                    if(i==2) num3 = in.nextInt();

Alguem pode me explicar isso aí, oque o System.in faz, oque significa in.nextInt();???

http://java.sun.com/j2se/1.5.0/docs/api/java/util/Scanner.html

Nada melhor que a documentação oficial como o wbdsjunior postou.

mas, basicamente entendo assim:

A classe Scanner() é capaz de capturar caracteres para poder trabalha-los. Como parâmetro você deve informar a origem dos dados, no exemplo “System.in” a entrada será pelo sistema (via pronpt). Os métodos como esse que você colocou nextInt() converte esse caractere capturado em um inteiro. Tem alguns outros métodos como nextDouble, nextFloat … que funcionam da mesma forma e são usados dependendo do tipo que pretender trabalhar.

Espero ter ajudado,
Se me enganei me corrijam…
Abraço