Java-ban, hogyan lehet két char tömb elemeit össze hasonlítani, hogy egyenlőek-e?
char[] elso_vers = versenyzo_valaszai.get(db_3).toCharArray();
char[] masodik_megold = megoldas.get(0).toCharArray();
if(elso_vers[i].equals(masodik_megold[i]))
equals-al próbáltam, de nem jó, a == elfogadja, de akkor nem helytelen eredményt ad.
Amúgy két string típusú arraylist-em van, és azoknak adott elemet akarom, össze hasonlítani, karakterről karakterre, hogy egyeznek-e?
Hogyan kellene ?
Én is arra gondoltam először, csak ahogyan próbáltam nem jött össze.
ArrayList típusú ez : versenyzo_valaszai.get(db_3)
így egy konkrét elemét adja meg, ami egy string és én ezt a stringet akarom össze hasonlítani karakterről karakterre.
pl:versenyzo_valaszai.get(db_3) --> "alma"
másik listából --> "amal"
a = a ?
m = l ?
a = m ?
a = l ?
így kellene össze hasonlítgatnom, nekem jó a string is csak nem tudom, hogyan kell rá hivatkoznom.
A versenyzo_valaszai.get(db_3)[0] nem fogadja el.
Átfogalmazom az első válaszoló kérdését: Miért akarod karakterenként összehasonlítani, ha összehasonlíthatod a komplett stringet is?
String elso_vers = versenyzo_valaszai.get(db_3) -> ez egy string.
String masodik_megold = megoldas.get(0) -> ez egy másik string.
elso_vers.equals(masodik_megold) -> ez meg összehasonlítja.
De köszönöm a gyors válaszokat, végül így oldottam meg , ha érdekel
System.out.println("4. feladat:\n"+megoldas.get(0)+" (a helyes megoldás)");
char[] elso_vers = versenyzo_valaszai.get(db_3).toCharArray();
char[] masodik_megold = megoldas.get(0).toCharArray();
for (int i = 0; i < masodik_megold.length; i++) {
String c_1 = String.valueOf(elso_vers[i]);
String c_2 = String.valueOf(masodik_megold[i]);
if(c_1.equals(c_2))
{
System.out.print("+");
}
else System.out.print(" ");
"ha kompletten hasonlítom össze akkor nem jó eredményt kapok"
Mi az hogy nem jó ereményt kapsz?
Teljesen mindegy, hogy a "kutya" Stringet a "kutya" Stringel vagy a char[] word ={k,u,t,y,a} tömböt a char[] word ={k,u,t,y,a} tömbel hasonlítod össze ugyan az az eredmény :)
A két char tömbben nem feltétlenül egyeznek meg a stringek.
pl:
a,l,m,a && a,l,m,a -->egyenlőek
a,l,m,a && a,l,l,l --> nem egyenlőek
Char tömbben nincsenek stringek.
A string egy char tömb.
El nem tudom képzelni mit hegesztesz Te ott a túloldalon.
2017. Májusi érettségi?
Igen abban a feladatban a megoldáshoz kell hasonlítani a választ és amikor helyes, akkor egy "+" jelet írni és amikor helytelen akkor egy szóközt...
Akkor kicsit kijavítanám a példát amit írtál.
A char értéket a javában egy egyszerű dupla egyenlőségjellel (==) össze lehet hasonlítani, nem kell egy Stringbe raknod és az .equals()ot használnod.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!