Ciao ho un problema: ho un un arraylist che contiene diversi ogetti...ora voglio verificare la presenza o meno di una stringa:
ridefinisco equals():
codice:class Test{ String f; Test(String d){ this.f=d; } public boolean equals (Object x) { boolean g=false; if(x instanceof Test){ return true; } Test p = (Test) x; return p.f.equals(this.f); } }
Contains dovrebbe confrontare oggetti equals..giusto?Perchè il compilatore mi stampa sempre 0?codice:import java.util.*; class Prova{ ArrayList<Test>a; String s; Prova(String t){ this.s=t; a=new ArrayList<Test>(); } public int getNumstringa(String u){ Test x=new Test(u); int count=0; if(a.contains(x)){ count++; } return count; } public static void main(String args[]){ Test i=new Test("ok"); Prova u=new Prova("bbbb"); System.out.println(u.getNumstringa("ok")); } }

Rispondi quotando


