Java 2 / Java 5 [ Dante Explica Java 2 ]

Olá Pessoal, boa noite.
Eu estou lendo um livro chamado Dante Explica Java 2.
E como ele usa o java 1.4, gostaria de saber se quais as diferencas e se fazem extamente as mesmas coisas, as classes abaixo:

O livro usa essas classes, Para ler algo vindo do teclado.:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

E eu troquei por essa:

import java.util.Scanner;

Achei mais tranquila, mais o efeito eh o mesmo? melhor ou pior?! se alguem quiser responder toda…pode ate dizer ate pq a Classe Scanner veio para substituir as outras 3 listadas acima?!..

Grato Galera.

:wink:

Olá

Antigamente muitos se queixavam que para ler uma linha do console era preciso 4 linhas.

A classe java.util.Scanner veio no Java 5 justamente para ajudar a resolver este problema. Porém há milhares de linhas escritas usando BufferedReader e por isto há os 2 modos de fazer a mesma coisa. Em termos de desempenho só testando mas não acredito que seja pior.

Você pode usar um Scanner passando para o construtor um BufferedReader de um InputStreamReader.

O único problema de usar Scanner é o programador esquecer que está usando na verdade uma classe de IO e que precisa fechar no final.

Mas não é só para isto que serve esta classe. Ela é mais moderna e atende a outras circunstâncias. Para ler mais sobre seu uso veja: http://java.sun.com/developer/JDCTechTips/2004/tt1201.html#1

[]s
Luca

[quote=Luca]Olá

Antigamente muitos se queixavam que para ler uma linha do console era preciso 4 linhas.

A classe java.util.Scanner veio no Java 5 justamente para ajudar a resolver este problema. Porém há milhares de linhas escritas usando BufferedReader e por isto há os 2 modos de fazer a mesma coisa. Em termos de desempenho só testando mas não acredito que seja pior.

Você pode usar um Scanner passando para o construtor um BufferedReader de um InputStreamReader.

O único problema de usar Scanner é o programador esquecer que está usando na verdade uma classe de IO e que precisa fechar no final.

Mas não é só para isto que serve esta classe. Ela é mais moderna e atende a outras circunstâncias. Para ler mais sobre seu uso veja: http://java.sun.com/developer/JDCTechTips/2004/tt1201.html#1

[]s
Luca[/quote]

Muito boa Luca…
Obrigado, realmente entendi…

1)Vc conhece esse livro que eu estou lendo?!
2)Meu Professor falou para turma, jogar todos os livros de java 2(1.4.2) fora e so lerem o de java 1.5, ele exagerou na sua opniao?
3)E vc na foto?!

— MERECEU 5 NA AVALIACAO! —

Olá

  1. Não

  2. Seu professor deve ter muito livro ruim. Os meus ainda valem muito. Você pode seguir estudando java 1.4 e depois aprender as diferenças que não são tantas. O mais complicado é o conceito de generics.

  3. Sim

[]s
Luca