[Java] Vraag om te herhalen.

Status
Niet open voor verdere reacties.

timboiscool

Gebruiker
Lid geworden
27 nov 2008
Berichten
205
Halloooooo mensen :D

Ik ben de tutorials van TheNewBoston(<-- die moet je echt kijken! handig!) van java aan het volgen maarik loop nu op de volgende fout van java het gaat zo:

ik wil dus een class maken die vraagt of jij wilt dat hij het script herhaalt ik doe dit met gebruik van "do{ blabla}while(blabla);" maar het werkt dus totaal niet D:

hier is code:

"
import java.util.Scanner;

public class kiwi {

public static void main(String args[]){

Scanner scn = new Scanner(System.in);
String awsome = "yes";
String awsomelc = "yes";


do{
System.out.println("wanna go on?");
awsome = scn.next();
awsomelc = awsome.toLowerCase();
}while(awsomelc == "yes");

}

}

"

yup je zag het wel mijn class heet kiwi , die zijn lekker :D.

btw: ik heb hem express naar lowercase gedaan zodat je yes and no gewoon met en zonder HOOFDLETTERS kan shrijven.

ik zou vragen of iemand dus kan zeggen waarom hij het niet doet en eventueel de code erbij.

groetjes en bedankt, Tim v. Osch
 
while(awsomelc.equals("yes"));

BTW: je hoeft niet eens lowercase te doen als je het volgende doet while(awsomelc.equalsIgnoreCase("yes"));

Edit: bedenk opeens dat je misschien ook wel uitleg wilt...
String kan regelmatig als een primitieve (zoals int, float, char enz...)behandeld worden maar het is wel degelijk een Object. Object A == Object B als het wel degelijk om het zelfde object gaat, d.w.z. 1 object met 2 pointers naar zijn geheugenplaats.
Dit bekom je door bijvoorbeeld te zeggen
String a = "yes";
String b = String a;

de equals methode daarentegen kan je zelf bepalen, maar voor String is deze standaard gezet op het vergelijken van de opstelling van de karakters (charsequence)
 
Laatst bewerkt:
Algemene opmerking, gewoon om je van in het begin de juiste conventions aan te leren :) Schrijf Kiwi met een hoofdletter, dit wordt standaard gedaan voor namen van classes. Zie je hoe Scanner en String met een hoofdletter geschreven zijn. Stel dat ik het volgende doe:
Scanner scanner = new Scanner(System.in);​
door het gebruik van de hoofdletter kan ik perfect de class van het object onderscheiden. Als je het eenmaal gewend bent leest het gewoon veel makkelijker.
 
while(awsomelc.equals("yes"));

BTW: je hoeft niet eens lowercase te doen als je het volgende doet while(awsomelc.equalsIgnoreCase("yes"));

Edit: bedenk opeens dat je misschien ook wel uitleg wilt...
String kan regelmatig als een primitieve (zoals int, float, char enz...)behandeld worden maar het is wel degelijk een Object. Object A == Object B als het wel degelijk om het zelfde object gaat, d.w.z. 1 object met 2 pointers naar zijn geheugenplaats.
Dit bekom je door bijvoorbeeld te zeggen
String a = "yes";
String b = String a;

de equals methode daarentegen kan je zelf bepalen, maar voor String is deze standaard gezet op het vergelijken van de opstelling van de karakters (charsequence)

Heel erg bedankt GAB ik wist nog geen eens van de :

awsomelc.equalsIgnoreCase("yes")

functie af!

En nog is bedankt voor de uitleg!
ik weet niet of ze het hier ook doen maar op de minecraft forums:

+ 10[diamonds]!



btw: Groetjes, Tim
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan