Para  implementação  de uma lista estática será necessário alocação de  espaço na memória física(memória principal),onde podemos representar através de arranjo de uma dimensão (vetor[]), onde o acesso ao nodo que serão controlados por índices iniciando no índice 0 , pois a  linguagem de programação  utilizada para implementação será o Java.Outro aspecto de  extrema relevância trata se que as ações que serão executadas em uma lista estática serão apresentadas na forma métodos.Então utilizaremos  um vetor de uma demissão do tipo String  para inserção dos elementos e também utilizaremos uma variável do tipo int para controlar o tamanho da lista.  

public class Lista {

    private String dados[];

    private int tamanho;   

*/ construtor  irá requer o tamanho do arranjo neste caso 10 posições  e a variável tamanho onde */inicializará o arranjo

public Lista(){

        dados=new String [10];

        tamanho=0;

    }

A verificação do conteúdo de uma lista estática terá  três  métodos para apresentar  seu conteúdo , sendo  dois para auxílio das atividades mais complexas que encontramos em uma lista estática  e outro com a finalidade auxílio a  interface com usuário .

Método verificação de lista vazia( método de auxilio)

*\ método de auxilio utilizado para verificar caso a lista esteja vazia ,caso tamanho seja igual a zero a  lista está vazia

public boolean vazia (){

        return tamanho==0;

 }

Metodo de verificação de lista cheia(método de auxilio).

*\ método de auxílio utilizado para verificar caso a lista esteja cheia ,caso tamanho seja igual a 10 a lista está cheia.

    public boolean cheia (){

        return tamanho ==dados.length;

  }


Método de mostrar conteúdo percorre(interface com usuário)

Este método será utilizado pelo usuário verificar o conteúdo do arranjo.

public void pecorrer(){

        for(int i=0;i<tamanho;i++)

        {

            System.out.print(" "+dados[i]+" ,");   

        }

        System.out.println(" ");

    }

 

Adicionar elemento ao final da lista.

         Neste exemplo utilizaremos uma representação de um vetor onde cinco posições estão sendo utilizadas (em tonalidade de cinza)  e se adicionará mais um nodo (em tom de azul)  e outros nodo em branco representará posições não utilizadas .

 

 Assim observamos que as posições preenchidas não se alteram e somente acrescentará a posição em azul ,ainda observamos que o tamanho modelo passa de 5 para 6 devido a inserção do novo nodo.

/* parâmetro “x” será referente ao  dado a ser inserido na lista.

public void adicionafinal (String x){

*/  devemos sempre devemos verificar se a lista está cheia através do método .

        if(!cheia())

       {

            dados[tamanho]=x;

            tamanho++;  // adiciona uma casa  aumentando o  tamanho  do arranjo.

        }

        else

        {

            System.out.print("Erro na Lista esta cheia");

        }  

    }

Adicionar elemento  no inicio da lista.

      Neste exemplo utilizaremos uma representação de um vetor onde seis  posições estão sendo utilizadas (em tonalidade de cinza)  e será adicionado no inicio  mais um elemento (em tom de azul)  e outros nodo em branco representará posições não utilizadas .

Podemos observar que a inserção de um novo elemento adicionará o aumento  do arranjo passando do tamanho 6 para o tamanho 7 .Ainda para inserção de um novo elemento será necessário criação de espaços no arranjo e locomoção dos elemento para uma posição a frente com isso podemos inserir no inicio o novo elemento.

    public void adicionainicio(String  x){

        if(!cheia()){           // método verifica se lista está cheia

           for(int i=tamanho;i>=1;i--)    //laço percorre o vetor

          {     

               dados[i]=dados[i-1];  //  aloca o elemento um índice a frente

           }

           tamanho++;                          // adiciona uma    casa  aumentando o  tamanho  do arranjo.

           dados[0]=x; //inserindo o novo elemento

         }

        else{

               System.out.println("lista cheia não possível  adicionar mais elementos"); 

           

            }

       }

 

Adiciona elemento em qualquer posição da lista

Neste exemplo utilizaremos uma representação de um vetor onde sete  posições estão sendo utilizadas (em tonalidade de cinza)  e será adicionado na posição 4 um    mais um elemento (em tom de azul)  e outros nodo em branco representará posições não utilizadas .

Podemos observar na figura 5 que parte do modelo permanece estática e outra parte será necessária alocação para um índice a frente  onde o limite para essa alocação será a posição a inserida o novo elemento .

Public void adicionaselect (String x,  int y){  //”x” é referente ao elemento e” y “a posição a ser inserida

        if(cheia())  //verifica se a lista  cheia.

       {

        System.out.println(“Erro a lista está vazia”);

     }

     else

          {

           if(y==0)   // verifica se a posição encontra se  no inicio do da lista

               {

               AdicionaInicio(x);  // método adiciona  no inicio será utilizado.

              }

              Else

                {

               if(y>tamanho) //caso seja maior que tamanho está for a da lista.

                 {

                  System.out.println(“Erro posição inválida”);

                 }

                  Else

                   {

                     for(int i=tamanho; i>=y;i--) // estrutura de laço decrementa até o até a posição a ser inserida.

                   {

                   dados[i]=dados[i-1];

                  }

                  dado[y]=x; // inserção de elemento no arranjo

                  tamanho++; // adição de uma casa no arranjo

               }

            }}}}

                         

Referências  bibliográficas

Edelwiss & Galante 2009 Estrutura de Dados Editora Bookman 2009.