E aí, @Gabrielog05. Beleza?
Bacana suas dúvidas. Vou responder uma a uma.
A classe Integer é uma classe wrapper. Existe o tipo primitivo int, certo? E existe a classe que “embrulha” a int, que é a Integer. Ela fornece mais métodos para trabalhar com o dado. Recomendo que você estude sobre as classes wrapper.
O método parseInt, da classe Integer, converte alguma coisa para inteiro. Como isso é útil? Bem, em conversões! Imagine que você recebe uma String que tem como valor “5”, significa que você recebeu uma representação em TEXTO do caractere cinco. Uma representação em texto não pode ser somada, por exemplo. Nem dividida, multiplicada, usada como contador. Agora, usando parseInt você converte de String para int, e assim, pode trabalhar com o dado. Deu para entender?
Essa é bem simples. Imagine que você tenha a string “UMDOISTRESQUATROGABRIELSETEVINTE”. Tem muitas formas de pegar qualquer palavra aí dentro, mas a substring é uma das mais fáceis.
Quando você tiver uma dúvida sobre o que faz um método, pesquise na documentação do Java sobre esse método. Entendendo o funcionamento do método, você entenderá os casos de uso.
Espero ter ajudado!
[]'s