Bom galera to tendo um problema aki pra pegar alguns valores
Eh o seguinte, tenho uma String com alguns valores inteiros separados por espaços, ex: 3 6 8
o que eu to tentando fazer eh o seguinte, preciso quantos numeros tem essa String e pegar esses valores e depois converte-los
converte-los eh tranquilo, mas nao to conseguindo pega os valores, alguem me da uma ajuda ae??
vlw desde ja. O codigo ta aki:
int contEsp = 0;//variavel q conta quantidades de espaço
String valores = JTFNum.getText();
String[] val = valores.split(" ");//separa no vetor os valores que serao pegos conforme a quantidade de espaço
for(int i = 0; i <= valores.length(); i++){
if(valores.charAt(i) == ' '){
contEsp++;
}
}
valores[i] não retorna o número que você quer? como vem essa String?
S
SMatematico
nao, pq eu preciso saber quantos espaços tem na String, pq depois vo precisar fazer um laço q vai depender desse valor.
A String sera digitada pelo usuario, entao pode ser qualquer numero e quantidade q ele quiser, soh q terao q ser separados
por um espaço.entendeu?
Rodrigo_Sasaki
Certo, mostre um exemplo dessa String pra mim. Qualquer String nesse formato que seja válida para aquilo que você quer.
e outra coisa, os números vão de 0 a 9? ou podem ter mais de 1 digito? Ex: 10, 100, 3898?
S
SMatematico
Ela pode ser de quantos digitos o usuario quiser
Ex: 3 25 100
eu teria q basicamente contar os espaços e armazenar os valores separados, armazenar os valores eu
consegui, mas contar os espaços aki nao ta dando muito certo.
Rodrigo_Sasaki
Use uma expressão regular no seu split:String[] val = valores.split("\\s+");
Tá aí na mão meu chapa, esse código imprime os espaços vazios, só coloca a lógica aí! :lol:
F
felipeaps
É sempre esse padrão?? Ou pode ter mais de um espaço entre os números?
Se for sempre assim, seu contEsp vai ser val.lenght - 1. Não é?
JuniorMaia
Havia necessidade de 2 tópicos iguais?
Rodrigo_Sasaki
Se o objetivo dele era contar os espaços simplesmente para removê-los, o split com o multiplicador + ja mata o problema.
AlexsandroJava
Um exemplo poderia ser este :
Strings="8 100 9 1289 100";String[]valores=s.split("\\s");for(Stringstring:valores){System.out.println(string);//Imprimi usando um foreach todos os valores}Matcherm=Pattern.compile("\\s").matcher(s);intespacos=0;while(m.find()){espacos++;//conta todos os espaços em branco existentes}System.out.println(espacos);
S
SMatematico
Vlw ai funciono certim, vlw mesmo cara…
aaaa e o otro topico q criei foi engano desculpa ai, eh q sou novo aki, sei q nao justifica, mas desculpa de qualquer forma…abrass
JuniorMaia
String valores = JTFNum.getText();
for (char c : valores.toCharArray())
System.out.println(c);