Czy zawsze jest złe? Mam bardzo duży plik tekstowy, chce odczytać wszystkie wiersze i z każdym wierszem spełniającym pewien warunek coś zrobić.
Kod
try
{
sc = new Scanner(new File("test.txt"));
while(true)
{
String s = sc.nextLine();
if(...)
{
//zrób coś
}
}
}
catch(Exception e)
{
System.out.println(e);
}
który na pewno wygeneruje wyjątek NoSuchElementException, jest o około 20% szybszy od kodu
try
{
sc = new Scanner(new File("test.txt"));
while(sc.hasNext())
{
String s = sc.nextLine();
if(...)
{
//zrób coś
}
}
sc.close();
}
catch(Exception e)
{
System.out.println(e);
}
Czy istnieją kryteria wyboru inne niż czas wykonania?