Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

String to Integer (Character Probleem)

None
4 antwoorden
  • 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] - 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
  • 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.
  • 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.
  • Waarom zou je het niet gewoon als een integer laten :?

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.