Gå til innhold

Sliter med å lære arryas


Anbefalte innlegg

Jeg sitter nå her med en stor oppgave i programmering. java, netbeans... problemet er at jeg sliter stort med å lære meg å bruke arrays og det er essensielt i denne oppgave.

 

skal hente info om studenter som leier hybler. har flere klasser en om studentene og dems infomarsjon, en om hybelen om den er ledig eller eventuelt hvem som leier den osv

 

en klasse med generell informasjon.

 

er det noen som kan klare å ta en kort innføring i hvordan arrays skal lages?

 

(oppgaven er vedlagt, hvis det blir lettere å forstå hva jeg skal gjøre!)

 

PS: Jeg ber ingen om å gjøre oppgaven for meg! kun fortelle meg hvordan jeg skal håndtere arrays.

Lenke til kommentar
Videoannonse
Annonse

Hvis du vet hvor mange plasser du trenger bruker du vanlige arrayer. De opprettes slik:

 

Object[] tabell = new Object[antall_plasser]; // Object: String, Person, Leietager etc.

datatype[] tabell2 = new datatype[antall_plasser]; // datatype: int, char, double etc.

 

Hvis det er snakk om å legge inn objekter mens programmet kjører manuelt, vet du jo ikke helt sikkert hvor mange objekter du vil legge til. Det kan derfor være lurt å bruke HashMap (spesielt hvis du vil søke etter objekter senere) eller ArrayList (tror HashMap er en viktig del av oblig 3). Forskjellen på en array og slike datastrukturer er at java automatisk utvider størrelsene ettersom du legger inn objekter i HashMap og ArrayList. Hvis du bruker vanlige arrayer vil størrelsen være konstant, og du kan da risikere og få en ArrayOutOfBoundsException som du sikkert kjenner til. :p

 

Hvis du sliter i å skjønne arrayer er det jo ikke værre enn å lese i læreboka?

Endret av kjey
Lenke til kommentar

Du går på Blindern, gjør du ikke? siden jeg hadde akkurat samme oblig, men uansett det er off topic.

En array er ikke annet enn en liste av variabler som tilhører en bestemt type. Altså i steden for å skrive:

int var1 = 0, var2 = 4, var3 = 12;

kan du rett og slett bytte det ut med en array. Arrayen er definert ved:

<type>[] <navn> = new <type>[<lengde>]
for eksempel:
int[] minArray = new int[3] //dette vil gi en array med plass til 3 heltallsverdier

 

for å hente ut, eller skrive til en bestemt plass i en array kan liknende kode brukes:

int plass = 1;
int verdi = minArray[plass];

 

Jeg håper at dette gjorde ting litt klarere (enten det, eller så gjorde jeg forvirringen komplett).

Uansett, lykke til med Obligen:)

Lenke til kommentar

Slik lærte jeg meg arrays for maaange år siden :p på skikkelig barnehage nivå

 

Se for deg et array som en garderobe. Når man oppretter garderoben velger man hvor mange skap den skal ha og hva den kan inneholde (datatype f.eks int, string, studenter, hybler).

int[] mittIntArray = new int[100]; //100 skap, alle verdier må være int
Student[] mittStudentArray = new Student[100]; //100 skap, alle verdier må være Student

Hvert skap får hvert sitt nummer (som i en garderobe) fra 0 til 99 (fra eksempelet over med 100 skap).

Når man skal legge noe inn eller ta noe ut av skapet må man vite hvilket skap man skal legge det inn i:

//Legge inn verdier
mittIntArray[0] = 20; //int-verdien 20 legges i skap nummer 0
mittIntArray[1] = 50; //int-verdien 50 legges i skap nummer 1
Student tommy = new student();
mittStudentArray[99] = tommy; // tommy legges inn i skap nummer 99

//Hente ut verdier
int i = mittIntArray[0] //henter ut verdien 20 som vi la inn i skap nummer 0
int i2 = mittIntArray[1] //henter ut verdien 50 som vi la inn i skap nummer 1
Student tommy = mittStudentArray[99]

 

edit: ble ikke så pent med linjeskift i koden, men du skjønner tegninga

Endret av Tommy
Lenke til kommentar
  • 2 uker senere...
  • 2 uker senere...

Går på Hibu jeg også. Så Thomas har bare saksa den obligen rett fra universitet ja. :p Hehe, den sleipingen. Dere skjønner det at vi har tre tredjeklassinger som assistentlærere, da hovedlæreren vår ikke er så stødig i programmering. I morgen er det eksamen, så vi får alle håpe at trådstarter har lært seg arrays. :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...