Arrays que comecam do ZERO!

9 respostas
z3r00

Heya Pessoal!!!

tenho o seguinte problema, tenho que crirar uma array de strings, mas nao quero inicia-la com nenhum valor… ou seja: basicamente eu quero crirar uma Array de Strings vaiza… MAS NAO FUNCIONA!!! Deem um look:

String[] Funcionario;

o certo deveria ser (em uma array nao vazia):

String[] Funcionario = new String[]{"valor1","valor2",...,"valorn"};

ALGUEM TEM A SOLUCAO?!?!?

9 Respostas

cv1

Voce nao leu a mensagem de erro do compilador, pelo jeito :wink:

Nao eh possivel declarar arrays sem tamanho definido. TODA ARRAY TEM QUE TER UM TAMANHO, nao interessa se ele eh zero:

String[] foo = new String[0]; String[] bar = new String[] {};

…sao trechos de codigo validos.

Alexandre

Num entendi mto bem, mas se vc quiser criar um array de Strings vazia, ou
seja, cada índice, conter um objeto String vazio (""), pode fazer o seguinte.

String [] strings = new String[8];
for (int i=0; i<strings.length; i++) {
    strings[i] = "";
}

Se num for isso, pode explicar mais detalhadamente, o q quer?

Att.

z3r00

Intao, é o seguinte,
primeiro: eu nao quero criar uma array de strings vazias, mas sim uma array vazia de strings...

o meu problema é que eu nao sei o tamanho da array... senao eu definia e boa...

e outra coisa, as duas opcoes:

... = new String[]{};
... = new String[0];

dao a mesma msg de erro:

org.apache.jasper.JasperException: 0
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:853)


root cause 

java.lang.ArrayIndexOutOfBoundsException: 0
	org.apache.jsp.GeraGrafico_jsp._jspService(GeraGrafico_jsp.java:125)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
cv1

Me parece que vc esta querendo usar uma ArrayList, entao :wink:

aborges

Isso ocorre pq vc está tentando utilizar um indice maior do q o q existe…

Como seu array foi declarado vazio, ele nao possui item nenhum… :frowning:

Acho q o q vc está querendo eh ma lista, certo ? :wink:

z3r00

Ai eu ja nao sei… nao conheco isso :cry:

aborges

C a gente mastigar perde a graca :slight_smile:

Dah uma lida AQUI

Qq duvida depois vc posta, ok

Fabricio_Cozer_Marti

Procure saber algo sobre ArrayList… com ele voce pode adicionar dinamicamente objetos em sua estrutura,

Ex. :
ArrayList minhaLista = new ArrayList(); // vazio
minhaLista.add(Objeto); // Esse objeto pode ser uma String !!!

//Existem tambem algumas estruturas ja implementadas para facilitar a
//manipulação de listas !!!

Ps.: Utilizando a API Java, seu código fica mais elegante! :wink:

t+

z3r00

Ae pessoal!

usei o tal do ArrayList…funcionou muito bem !!!

valew!!!

Criado 1 de junho de 2004
Ultima resposta 1 de jun. de 2004
Respostas 9
Participantes 5