Innehållsförteckning
Det kommer en punkt i mer komplexa program där de metoder vi utför behöver mer än en enkel variabel som ett argument, kanske vi måste bearbeta en stor lista med element eller att vi helt enkelt måste behandla en array som en helhet, för detta Java tillåter oss att ta emot matriserna som argument för metoderna.Men på grund av de olika matriser av de normala variablerna måste vi vidta vissa försiktighetsåtgärder när vi arbetar på detta sätt.
Vidarebefordra en matris till en metod
I Java att överföra en array till en metod är inte ett problem, men den kommer inte att bete sig på samma sätt som en variabel av en primitiv datatyp, eftersom när vi skickar en arrayvariabel till en metod, är det vi verkligen gör att skicka en referens, det vill säga innehållet som metoden kommer att manipulera är verkligen innehållet i matrisen som vi passerar, så om en position ändras inom metoden kommer den också att förändras i originalmatris.
Av denna anledning måste vi vara medvetna om vad som kommer att hända när vi gör den här typen av instruktioner inom våra program för att vara beredda att anta resultaten och konsekvenserna. Låt oss se följande kod:
public class TestArray {public static void main (String [] args) {int x = 1; // x representerar ett värde int int [] y = nytt int [10]; // y representerar en rad värden int m (x, y); // vi kallar metoden m med argument "x" y "y" System.out.println ("x är" + x); System.out.println ("y [0] är" + y [0]); } offentligt statiskt tomrum m (int -nummer, int [] -nummer) {nummer = 1001; // Vi tilldelar ett nytt värde till siffrorna [0] = 5555; // Vi tilldelar ett nytt värde till siffror [0]}}
Här gör vi ett ganska enkelt program, det vi gör är att vi deklarerar en normal int -variabel och sedan deklarerar vi a array int, sedan skickar vi dem med parametrar till a metod som kallas m som tar emot båda variablerna, inom metoden tilldelar vi ett nytt värde till int -variabeln och tilldelar ett värde till en position i vår array.
Låt oss se vad programmet skriver ut när vi kör det genom konsolen:
FÖRSTORA
Om vi tittar x bibehåller sitt ursprungliga värde, medan Y i sin position [0] antar den det värde som tilldelats den inom metoden, vilket visar vad som har förklarats, att samma referens för matrisen används trots att den skickas som en parameter till metoden.ViktigVid denna tidpunkt måste vi vidta nödvändiga försiktighetsåtgärder, till exempel att kopiera originalmatris i en ny och använd den för att inte förlora våra ursprungliga värden, för att sedan få tillgång till fördelarna med att använda en array i vårt program.
Med detta avslutar vi vår handledning om hur du använder en array som en parameter i en metodEftersom vi ser att utförandet av detta inte är komplicerat alls, kan det vara svårt att förstå logiken att en referens skickas till innehållet i matrisen och att den kan modifieras inom metoden, men när vi har detta internaliserat, använd matriser i våra program hjälper oss att skapa bättre funktioner.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng