Advertisement
coelhojs

Aviões (exemplo de vetor de objetos)

Sep 24th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.67 KB | None | 0 0
  1.  
  2. import java.util.Scanner;
  3.  
  4. public class FilaDecolagem {
  5.     Aviao[] avioes;
  6.     int n;
  7.     private static Scanner scanner;
  8.  
  9.     FilaDecolagem(int tamanho) {
  10.         avioes = new Aviao[tamanho];
  11.         n = 0;
  12.     }
  13.  
  14.     void inserirInicio(String nome) throws Exception {
  15.         if (n >= avioes.length) {
  16.             throw new Exception("Fila cheia!");
  17.         } else {
  18.             int i;
  19.             for (i = n; i > 0; i--) {
  20.                 avioes[i] = avioes[i - 1];
  21.                 avioes[i].setIdentificador(n - i + 1);
  22.             }
  23.             avioes[0] = new Aviao(nome, n + 1);
  24.             n++;
  25.         }
  26.     }
  27.  
  28.     Aviao removerFim() throws Exception {
  29.         if (n == 0) {
  30.             throw new Exception("Erro!");
  31.         } else {
  32.             return avioes[--n];
  33.         }
  34.     }
  35.  
  36.     void mostrar() {
  37.         System.out.println("Aviões:");
  38.         for (int i = 0; i < n; i++) {
  39.             System.out.println("Nome: " + avioes[i].getNome() + ", Identificador: " + avioes[i].getIdentificador());
  40.         }
  41.     }
  42.  
  43.     void primeiroDaFila() {
  44.         for (int i = 0; i < n; i++) {
  45.         }
  46.         System.out.println("Primeiro avião da fila: ");
  47.         System.out.println("Nome: " + avioes[n - 1].getNome() + ", Identificador: " + avioes[n-1].getIdentificador());
  48.     }
  49.  
  50.     public static void main(String[] args) throws Exception {
  51.         FilaDecolagem filaDecolagem = new FilaDecolagem(4);
  52.         scanner = new Scanner(System.in);
  53.         int opcao;
  54.         do {
  55.             System.out.println("CONTROLE DE PISTA DE DECOLAGEM");
  56.             System.out.println("Selecione a opção abaixo:");
  57.             System.out.println("1-Autorizar a decolagem do primeiro avião da fila");
  58.             System.out.println("2-Adicionar um avião à fila de espera");
  59.             System.out.println("3-Listar todos os aviões na fila de espera");
  60.             System.out.println("4-Listar as características do primeiro avião da fila");
  61.             System.out.println("0-Sair");
  62.  
  63.             opcao = scanner.nextInt();
  64.  
  65.             switch (opcao) {
  66.             case 1:
  67.                 filaDecolagem.removerFim();
  68.                 System.out.println("Decolagem autorizada!");
  69.                 System.out.println();
  70.                 break;
  71.             case 2:
  72.                 System.out.println("Adicionar um avião à fila de espera");
  73.                 System.out.println("Informe o nome do avião: ");
  74.                 String nome = scanner.next();
  75.                 filaDecolagem.inserirInicio(nome);
  76.                 /*
  77.                  * System.out.println("Avião adicionado à fila."); System.out.println("Nome: " +
  78.                  * aviao[i].getNome()); System.out.println("Identificador: " +
  79.                  * aviao.getIdentificador());
  80.                  */
  81.                 System.out.println();
  82.                 break;
  83.             case 3:
  84.                 filaDecolagem.mostrar();
  85.                 System.out.println();
  86.                 break;
  87.             case 4:
  88.                 filaDecolagem.primeiroDaFila();
  89.                 System.out.println();
  90.                 break;
  91.             case 0:
  92.                 System.out.println("Sistema encerrado.");
  93.                 System.out.println();
  94.                 break;
  95.             default:
  96.                 System.out.println("Erro. Tente novamente.");
  97.             }
  98.         } while (opcao != 0);
  99.     }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement