Olá Ayrton, tudo bem?
Sim, ambos os métodos têm a mesma funcionalidade, que é buscar uma empresa com um determinado ID em uma lista de empresas e retorná-la.
O seu método usa a API de stream do Java para filtrar a lista de empresas pelo ID e, em seguida, retorna a primeira empresa encontrada usando o método findAny(). Se nenhuma empresa for encontrada, o método retorna null.
O método da aula usa um loop for para iterar sobre a lista de empresas e, em seguida, compara o ID de cada empresa com o ID fornecido como parâmetro. Se o ID corresponder, a empresa é retornada. Se nenhum ID correspondente for encontrado, o método retorna null.
Embora os métodos tenham a mesma funcionalidade, a implementação pode ter impacto no desempenho e na legibilidade do código. Em geral, o uso de streams pode tornar o código mais conciso e legível, mas pode ter um impacto negativo no desempenho em algumas situações. Por outro lado, o uso de loops for
pode ser mais verboso, mas pode ser mais eficiente em alguns casos.