All pastes #353744 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-02-13 15:39 UTC
rendered paste body
import java.util.Locale;

/**
 * Testiluokka ja -ohjelma luokan Puhelu kokeilemiseksi ja testaamiseksi
 */
public class Karkausvuosiohjelma {
  private Scanner lukija;
  
  /**
   * Luokan konstruktori.
   *
   */
  public Karkausvuosiohjelma() {
    this.lukija = new Scanner(System.in);
    this.lukija.useDelimiter(System.getProperty("line.separator"));
    this.lukija.useLocale(Locale.US);
  }
  
  /**
   * Apumetodi int-lukujen lukemiseen
   * 
   * @return Luettu arvo
   */
  private int lueInt() {
    int arvo = 0;
    boolean onnistui = false;
    while (!onnistui) {
      try {
        arvo = this.lukija.nextInt();
        onnistui = true;
      } catch (InputMismatchException ime) {
        String s = this.lukija.nextLine();
        System.out.println("Kelvoton kokonaisluku: \"" + s +
        "\". Anna uusi!");
      } catch (NoSuchElementException nse) {
      } 
    }
    return arvo;
  }
  /**
   * Luokan metodi, joka sisältää varsinaisen toiminnallisen osuuden
   *
   */
  private void aja() {
    System.out.println("Anna tarkasteltavien vuosien alaraja:");
    int alaraja = this.lueInt();
    System.out.println("Anna tarkasteltavien vuosien yläraja:");
    int ylaraja = this.lueInt();
    Karkausvuosilaskuri k = new Karkausvuosilaskuri(alaraja, ylaraja);
    System.out.println("\nVälillä olevat karkausvuodet:\n" + k.luetteleKarkausvuodet());
  }
 
  /**
   * Yksinkertainen pääohjelma. 
   * 
   * @param args Komentoriviparametrit (ei käytetä)
   */
  public static void main(String[] args) {
    Karkausvuosiohjelma p = new Karkausvuosiohjelma();
    p.aja();
  }

}