Hvordan lage et sett med funksjonen returnerer

Retur en verdi fra en funksjon er en av de grunnleggende begreper i programmering. Men de fleste språk gir ingen direkte støtte til å returnere et helt sett av verdier fra et funksjon. Ikke desto mindre, i hvert språk, er det mulig å finne en måte å oppnå dette.

Bruksanvisning

Rubin

1 Åpne en ny tekst editor og lagre filen som "Multifunction.rb."

2 Lim inn følgende funksjon i teksteditor:

def multifunksjons x

return x+1, x+2, x+3

slutt

Ruby er en av de få språk som faktisk støtter retur flere verdier fra dens funksjoner. Denne funksjonen tar et enkelt argument - oppkalt x - og returnerer tre verdier: x + 1, x + 2, og x + 3.

3 Lim inn følgende på linjen etter at funksjonen:

x, y, z = 0 multifunksjons

Dette kaller funksjonen "multifunksjons" med tallet 0 og setter variablene x, y og z, i rekkefølge, til verdiene returnert. Så vil resultatet være:

x = 1

y = 2

z = 3

Visual Basic.NET

4 Åpne Visual Basic og opprette et nytt prosjekt. Velg "Command Line Application".

5 Lim inn følgende for å definere en Visual Basic-funksjonen.

Public Function multifunksjon () som String

dim arr(3) as String

arr (0) = "Kevin"

arr (1) = "James"

arr (2) = "Walker"

avkastning arr

end funksjon

Som du kan se, ikke Visual Basic ikke direkte støtte retur flere verdier fra en funksjon, men de kan returneres innen en annen datastruktur, for eksempel en enkel matrise.

6 Lim inn følgende å teste funksjon:

dim arr = multifunksjon ()

Variabelen "arr" vil bli satt til rekken av strenger returneres av funksjonen.

Java

7 Åpne en teksteditor og umiddelbart lagre med filnavnet "Multifunction.java."

8 Lim inn følgende kode i det:

import java.util.HashMap;

klasse Multi {

public static HashMap multifunction() {

HashMap resultater = ny HashMap ();

results.put ( "fornavn", "Kevin");

results.put ( "lastname", "Walker");

returnere resultater;

}

}

Som du kan se, Java, som VB, støtter ikke retur av flere verdier fra en funksjon direkte, men du kan lure den til å returnere dem likevel ved å sette verdiene i en samling av noe slag. Her er en HashMap brukes fra Java standard biblioteket. Dette gjør det mulig å navngi hver av returverdier med en nøkkel og hente dem senere med samme nøkkel. Men arrays, linkedlists og stabler er også gyldige samlinger for å bruke, så egnet.

9 Lim inn følgende i Multi klasse for å teste funksjon:

public static void main(String[] args) {

HashMap name = multifunksjon ();

System.out.println (name.get ( "fornavn"));

System.out.println (name.get ( "lastname"));

}

Hint

  • I virkeligheten er Ruby gjør det samme som Visual Basic og Java: plassere alle verdiene inn i en ny matrise og returnerer det. Imidlertid syntaksen til språket skjuler denne fra brukeren for å gjøre prosessen mer åpenbare.