Toon posts:

aanroep functie in java

Pagina: 1
Acties:
  • 119 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Onderstaande functie gebruik in een java programma. Dit programma geeft het eerste karakter uit een string met getallen terug. Nu wil ik graag dat het eerste getal wordt teruggegeven en dat ook de meegegeven string waarde met 1 element wordt verkleint. Dit kan natuurlijk vanuit het hoofdprogramma maar ik wil het vanuit de class functions. In delphi dit ik dit door in de aanroep van int buf_word(String waarde) var op te nemen maar dit werkt helaas niet in java, weet iemand hier een oplossing voor

programma

functions func = new functions();
String waarde = "12345";
int x = func.buf_word(waarde);

class functions
{
int buf_word(String waarde)
{
int result = 0;
if (waarde.length() > 0)
{
int int_waarde = (int)waarde.charAt(0);

//verwijder het eerste element uit de waarde
waarde = waarde.substring(1, waarde.length());
}
return result;
}
}

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Waarvoor is die functie? Je wilt een string omzetten naar een integer?

int i = Integer.parseInt("12345");

en je zou een StirngBuffer ipv een Stirng mee kunnen geven. Een String is een immutable object dus daar kan je niets meer aan veranderen, een StringBuffer heeft deze beperking niet. Maar kijk toch eerst even goed naar mijn 1e opl.

Verwijderd

Topicstarter
nee, ik heb de functie nu wat versimpeld om goed te kunnen posten, de ene keer wil ik 3 karakters uit een string omzetten naar een getal, de andere keer 5. Deze string wordt geencript verstuurd, dit heb ik niet weergegeven

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12-09 21:31

Janoz

Moderator Devschuur®

!litemod

Het lijkt me verstandig als je een keertje een OO-cursus gaat volgen oid. Het oo kunnen programmeren is eigenlijk wel een beetje een vereiste als je met een oo-taal aan de slag gaat...

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Topicstarter
heb ik gedaan, en weet redelijk wat van java. Ook van andere programmeertalen, alleen heb ik hier een probleempje mee en dit is toch een forum voor dergelijke vragen?

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Maak anders zoiets:
code:
1
2
3
4
public int getInt(String source, int length){
    String s = source.substring(0,length);
    return Integer.parseInt(s);
}

Verwijderd

Topicstarter
pas in de functie buf_word kan de lengte pas bepaald worden en ik wil de int en de string terug, hier heb ik wel getal maar niet de rest van de string

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Waarom zou je die string kapot willen hebben? Je kan toch werken mbv een offset?
code:
1
2
3
4
public int getInt(String source, int offset, int length){
   String s = source.substring(offset,offset+length);
   return Integer.parseInt(s);
}

Strings opbouwen is erugh langzaam in java.

Verwijderd

Topicstarter
maar de offset e.d. weet ik pas in de functie en niet in de aanroep daarvan

Verwijderd

Je bedoeld dus eigenlijk dat je de meegegeven string (waarde) verandert, en dat deze ook buiten de functie verandert.

Als je geen gebruik wilt maken van een publieke variabele welke in alle functies bekent is, dan zul je de variabelen als VAR mee moeten geven...

...Ik heb alleen even geen idee hoe je dat doet?

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Op dinsdag 12 maart 2002 11:53 schreef pottieman het volgende:
Je bedoeld dus eigenlijk dat je de meegegeven string (waarde) verandert, en dat deze ook buiten de functie verandert.

Als je geen gebruik wilt maken van een publieke variabele welke in alle functies bekent is, dan zul je de variabelen als VAR mee moeten geven...

...Ik heb alleen even geen idee hoe je dat doet?
StringBuffer
Pagina: 1