sábado, 8 de abril de 2017

Pesquisando string e marcando a ocorrência no array

Para aproveitar o pouco tempo que sobrou,
e como estou escrevendo códigos de pesquisa,
quero apresentar este no momento.
Este interessante programa marca a ocorrência
encontrada no próprio array de string,
proporcionando um excelente desempenho.
Fica claro que está baseado no método equals.
Este método importantíssimo do java,
compara duas variáveis referência no Java,
e verifica se as duas referem-se ao mesmo objeto.
O equals recebe um Objecto como argumento
e deve verificar se ele mesmo é igual ao Object
recebido para retornar um boolean.

Veja abaixo imagens do programa em execução:





Veja abaixo o código do programa:



import java.awt.Toolkit;
import java.util.Scanner;

class PROJETO {
     public static void main ( String args[] ) {
         // ///////////////////////////////////////////////////////////////
         J jht = new J ( );
         jht.textbackground ( jht.WHITE );
         jht.Moldura ( ( short ) 1, ( short ) 24, ( short ) 2, ( short ) 78 );
         jht.title ( " " );
         String pesq = "";
         int i, j, i_1 = -1, j_1 = -1;
         String [ ] [ ] Frutas =
                  {{ "Mamão"    },
                   { "Jabuticaba"},
                   { "Graviola"  },
                   { "Amora"     },
                   { "Goiaba"    },
                   { "Melancia" }};
         // ///////////////////////////////////////////////////////////////
         jht.textcolor ( jht.LIGHTRED );
         jht.gotoxy ( ( short ) 28, ( short ) 3 );
         System.out.printf ( "PESQUISANDO STRING EM MATRIZ " );
         jht.textcolor ( jht.LIGHTBLUE );
         jht.gotoxy ( ( short ) 29, ( short ) 5 );
         System.out.printf ( "Imprimindo abaixo a Matriz " );
         for ( i = 0; i < Frutas.length; i++ ) {
              jht.gotoxy ( ( short ) 37, ( short ) i + 7 );
              for ( j = 0; j < Frutas [ i ].length; j++ ) {
                   jht.textcolor ( jht.BLACK );
                   System.out.print ( Frutas [ i ] [ j ] );
              }
         }
         // ///////////////////////////////////////////////////////////////
         jht.textcolor ( jht.LIGHTBLUE );
         jht.gotoxy ( ( int ) 29, ( int ) 14 );
         System.out.printf ( "Digite uma Palavra: " );
         jht.textcolor ( jht.LIGHTRED );
         Scanner dados = new Scanner ( System.in );
         pesq = dados.nextLine ( );
         boolean Encontrou = false;
         for ( i = 0; i < Frutas.length; i++ ) {
              for ( j = 0; j < Frutas [ i ].length; j++ ) {
                   if ( pesq.equals ( Frutas [ i ] [ j ] ) ) {
                        Encontrou = true;
                        i_1 = i;
                        j_1= j;
                        break;
                   }
              }
         }
         // ///////////////////////////////////////////////////////////////
         if ( Encontrou ) {
              jht.gotoxy ( ( int ) 37 + j_1, ( int ) i_1 + 7 );
              jht.textcolor ( jht.LIGHTRED );
              System.out.println ( pesq );
         } else {
              Toolkit.getDefaultToolkit ( ).beep ( );
               jht.textcolor ( jht.BLACK );
                 jht.gotoxy ( ( int ) 29, ( int ) 15 );
                 System.out.printf ( "Paavra não encontrada" );
         }
          // ///////////////////////////////////////////////////////////////
        jht.textcolor ( jht.LIGHTBLUE );
        jht.gotoxy ( ( int ) 29, ( int ) 17 );
        jht.Sleep ( ( short ) 1800 );
        System.out.printf ( "Por: " );
        jht.textcolor ( jht.LIGHTMAGENTA );
        System.out.printf ( "Samuel Lima" );
        jht.textcolor ( jht.BLACK );
        jht.gotoxy ( ( int ) 29, ( int ) 18 );
        System.out.printf ( "sa_sp10@hotmail.com" );
        jht.Sleep ( ( short ) 1800 );
        jht.textcolor ( jht.LIGHTRED );
        jht.gotoxy ( ( int ) 34, ( int ) 22 );
        System.out.printf ( "MUITO OBRIGADO" );
        jht.getche ( );
        // ///////////////////////////////////////////////////////////////
     }
}

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.