agora vou manda ocodigo que ja fiz so nao to conseguindo cria esse array e quando eu crio nao consigo forma.add NAO APARECE!
packageclassesBasicas;importjava.util.ArrayList;publicclassColecaoForma{privateFormaGeometricaforma[];publicColecaoForma(){//ArrayList<FormaGeometrica> forma = new ArrayList<FormaGeometrica>();ArrayListforma=newArrayList<>();//FormaGeometrica forma = new FormaGeometrica();}publicFormaGeometricaadicionarForma(FormaGeometricaforma){returnforma=newFormaGeometrica();}publicStringtoString(){return"Formas PSC: "+forma;}}
Irmao fiz essa mudança mais nada mudou ainda nao esto conserguindo forma.add nao aparece
packageclassesBasicas;importjava.util.ArrayList;publicclassColecaoForma{privateArrayListforma;publicColecaoForma(){forma=newArrayList();//ArrayList<FormaGeometrica> forma = new ArrayList<FormaGeometrica>();//FormaGeometrica forma = new FormaGeometrica();//FormaGeometrica forma = new FormaGeometrica();}publicFormaGeometricaadicionarForma(FormaGeometricaforma){returnforma.;}publicStringtoString(){return"Formas PSC: "+forma;}}
Só lembra de implementar um toString bonitinho dentro da tua classe FormaGeometrica.
freakazoid
thiago0000, não entendi muito bem o porque do seu método adicionarForma não é void, mas blz rs
boolean java.util.ArrayList.add(E e)
Este carinha espera receber como parâmetro um objeto do tipo Object e possui um retorno booleano (true ou false). Você diz que no seu método adicionarForma retorna um objeto do tipo FormaGeometrica. Passar como retorno deste método um boolean não uma opção válida.
lembre-se que as variáveis declaradas em escopo local (isso inclui parâmetros) sobrepõem as de escopo de classe, então para acessar as de escopo da classe você precisa utiliza a palavra reservada this.
No escopo da função: this.forma é o atributo da classe forma é o parâmetro da função
WellingtonRamos
ArrayList forma deve ser atributo de tua classe.
public class ColecaoForma {
private ArrayList forma;
//seu construtor
public ColecaoForma() {
forma = new ArrayList();
}
//resto do teu codigo
}
WellingtonRamos
thiago0000:
Irmao fiz essa mudança mais nada mudou ainda nao esto conserguindo forma.add nao aparece
packageclassesBasicas;importjava.util.ArrayList;publicclassColecaoForma{privateArrayListforma;publicColecaoForma(){forma=newArrayList();//ArrayList<FormaGeometrica> forma = new ArrayList<FormaGeometrica>();//FormaGeometrica forma = new FormaGeometrica();//FormaGeometrica forma = new FormaGeometrica();}publicFormaGeometricaadicionarForma(FormaGeometricaforma){returnforma.;}publicStringtoString(){return"Formas PSC: "+forma;}}
Percebo que você não deve saber como trabalhar com List e escopo de variáveis dentro de uma classe...
Primeiramente, o método adicionaForma não faz mágica. Você tem que codificar o que ele deve fazer. Para isso, vêm o HOWTO use de List.
//Cria listArrayListlist=newArrayList();//Adiciona itens à listaObjectseuObjeto=newObject();//Substitua Object pelo que desejar...list.add(seuObjeto);//Se não fizer isto, o objeto não será adicionado à lista.//Lendo listafor(Objectitem:list){System.out.println(item.toString());//Apesar de toString ser implícito, preferí deixá-lo explícito}