anoniem Geplaatst: 22 december 2007 Delen Geplaatst: 22 december 2007 Hallo Ik moet voor mijn school een java game maken, alleen nu heb ik een probleem: Ik moet een een string omtoveren tot een integer, nu heb ik geprobeerd er eentje te maken maar hij geeft telkens dezelfde foutmelding. Ook de leraar wist dit probleem niet te fixen. De code is: public static int ConvertStringToInt(String data) { int value = 0; int length = data.length(); fixed([u:120dc245af]char* characters [/u:120dc245af]= data); { for (int i = 0; i < length; ++i) { value = 10 * value + ([u:120dc245af]characters[/u:120dc245af][ i ] - 48 ); } } return value; } De foutmelding is bij de eerste rode streep: -Syntax error on Tokens, Delete this Tokens -characters cannot be resolved De foumelding bij de 2e streep is ook: -characters cannot be resolved Ik heb echt geen idee waarom die characters niet kent, misschien hebben jullie een oplossing Alvas Bedankt!!! En fijne feestdagen toegwenst Quote Link naar reactie
anoniem Geplaatst: 26 december 2007 Auteur Delen Geplaatst: 26 december 2007 Misschien is het een idee de methode "charAt" uit de klasse String te gebruiken. De code komt er daarmee ongeveer als volgt uit te zien:[code:1:0e117f1d28]public static int ConvertStringToInt(String data) { int value = 0; int length = data.length(); for (int i = 0; i < length; ++i) { value = 10 * value + (data.charAt( i ) - '0' ); } return value; } [/code:1:0e117f1d28] Het lijkt mij overigens een goed idee om te controleren of er in data alleen cijfers staan. Zodra er een niet-cijfer gevonden wordt kan de functie stoppen (niet-cijfers kunnen rare antwoorden veroorzaken met dit algoritme). Overigens gebruik ik zelf zelden of nooit Java, dus ik weet niet zeker of dit wel werkt. De oorspronkeljke foutmelding werd waarschijnlijk veroorzaakt doordat java de regel waarin characters gedefineerd werd niet begreep. Quote Link naar reactie
anoniem Geplaatst: 28 december 2007 Auteur Delen Geplaatst: 28 december 2007 Om een string om te zetten naar int kun je toch ook gewoon dit gebruiken: int value = Integer.parseInt(data); Zo hebben wij het toch gezien in onze cursus Java. Quote Link naar reactie
anoniem Geplaatst: 30 december 2007 Auteur Delen Geplaatst: 30 december 2007 Waarom zou je het niet gewoon als een integer laten :? Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen