ArrayList para String

19 respostas Resolvido
Juliano_Santos

Eu gostaria que alguem me desse uma dica de onde posso encontrar informação para resolver meu problema ou de uma sugestão para resolver.

Fiz um codigo que alimenta um ArrayList com V ou F. Ele verifica as condiçoes que imponho e vai inserindo na lista.digamos que seja 8 espaços a serem preenchidos com V ou F ele faz:
V //indice0
VF //indice1
VFV //indice2…
VFVV // essa linha é o que eu quero

nesse caso meu interesse é na sequencia que está na ultima linha ou seja VFVV e eu consegui isso fazendo : System.out.print(lista.get(i));

entao agora eu tenho a seguencia que eu queria.No entanto pra eu manipular essa sequencia seria ideal transformar essa sequencia em uma string e é ai que tá o problema.Não consegui fazer e por isso venho aqui pedir ajuda e espero que alguem consiga me ajudar

19 Respostas

darlan_machado

Como não? Essa lista é de que?

FearX

Você fez uma arraylist de strings, espero, certo?

Se sim, salva a linha que você quer numa variável do tipo String e aí é só manipular.

darlan_machado

Aliás, se é para fazer assim, nem precisa de arraylist, vai de String mesmo e vai apendando.

FearX

Espero que eu esteja entendendo certo sua questão, e se for, um StringBuilder resolveria bem mais facilmente.

Juliano_Santos

vou providenciar o exemplo pra ficar mais claro.

Juliano_Santos

eu digo pro programa : preencha uma lista de 5 lugares usando um FOR incrementando uma variavel i da seguinte forma se condição A adicione na lista V se condição B adicione la lista F.

entao o programa começa:

quando eu printo usando

System.out.print(lista.get(i));
o programa printa por exemplo: VFVFF

o que eu quero é pegar essa sequencia que ele printou e dizer assim:

String nome da string = “VFVFF”

Juliano_Santos

sim eu fiz: ArryList respostas= new ArrayList();

tem o sinal de maior e menor com String no meio mas aqui nao aparece

Guilherme9401

Eu não entendi muito bem sua dúvida, mas acho que é isso. Se não for, me desculpe.

public static void main(String[] args) {
	
	List<String> list = new ArrayList<>(); //cria a lista
	
	//adicionando elementos na lista
	list.add("V");
	list.add("F");
	list.add("V");
	list.add("F");
	list.add("F");
	
	StringBuilder sb = new StringBuilder();//criando um StringBuilder
	
	for (String s : list) { //percorrendo a lista
		sb.append(s); //adicionando os elementos da lista no StringBuilder
	}
	
	String s = sb.toString(); //criando um objeto String com o valor do StringBuilder
	
	System.out.println(s); //imprimindo VFVFF
	
	s += " - teste";
	System.out.println(s); //imprimindo VFVFF - teste
	
}

Dei umas editadas no texto pra deixar visualmente mais bonito.

Juliano_Santos

ao fazer isso o valor que o programa me dá para esse caso é:
V
VF
VFV
VFVF
VFVFF

Guilherme9401

Eu fiz umas modificações, veja agora se é o que você estava pedindo. Se não for, tente explicar melhor sua dúvida.

Juliano_Santos
import java.util.ArrayList;
 public class Respostas {
     public static void main(String[]args){
         ArrayList<String> sequencia = new ArrayList();           
       
         for(int i=0 ; i<=8 ; i++){
             if(i % 3 ==0){
                 sequencia.add("V");
             }else{
                 sequencia.add("F");
             }
             System.out.print(sequencia.get(i));
         }
     }
 }
Juliano_Santos

agora sim consegui dar o exemplo

Juliano_Santos

vou tentar entender e ver se resolve.obrigado

Juliano_Santos

V
V - teste
VF
VF - teste
VFF
VFF - teste
VFFV
VFFV - teste
VFFVF
VFFVF - teste
VFFVFF
VFFVFF - teste
VFFVFFV
VFFVFFV - teste
VFFVFFVF
VFFVFFVF - teste
VFFVFFVFF
VFFVFFVFF - teste

Guilherme9401
Solucao aceita

Pelo o que eu entendi até agora você quer que vai gerando respostas e adicionando em uma String.

public static void main(String[] args) {
    
    StringBuilder respostas = new StringBuilder(); //cria o meu StringBuilder
  
    for(int i = 0; i <= 8; i++){
        if(i % 3 == 0)
        	respostas.append('V'); //se o resto for 0 eu adiciono V
        else
        	respostas.append('F'); //se o resto não for 0 eu adiciono F
    }
    
    /*
    Se quiser armazenar em uma variável:
    String r = respostas.toString();
    */
    
    System.out.println(respostas.toString()); //imprimo a String com o valor armazenado no StringBuilder
    
}
Juliano_Santos

sendo assim é desnecessario colocar em um arrayList pra depois converter.Não tinha nem como pensar nisso.

Juliano_Santos

o colega que fez o codigo mostrou isso e realmente nao precisava do arraylist

Guilherme9401

Eu tinha feito com ArrayList antes pois pensei que você estaria utilizando algum método dessa classe. Mas sim, nesse caso então não iria precisar do ArrayList. Basta fazer com o StringBuilder para não ficar criando vários objetos String.

Juliano_Santos

Não pude agradecer ontem pois excedeu o numero maximo de msg.Muito obrigado ao Guilherme9401 e aos demais.

Criado 12 de março de 2019
Ultima resposta 14 de mar. de 2019
Respostas 19
Participantes 4