Gå til innhold

Sortere et Array og fjerne null


Anbefalte innlegg

Skrevet

Jeg har et array.

1 2 3 4 5

 

Jeg har en metode som sletter ene objektet i Arrayen.

 

Jeg har valgt å slette objektet slik:

 

arrayNavn[indexNummer] = null;

 

Da får jeg f.eks:

 

1 null 3 4 5.

 

Spørsmålet mitt er hvordan jeg får sortert og fjerna null, eller slik at han ikke skriver ut null?

- 1 3 4 5 null

- 1 3 4 5

 

Jeg har prøvd dette:

for (int i = 0; i < arrayNavn.length; i++){
if (arrayNavn == null){
while(i != arrayNavn.length-1)
arrayNavn = arrayNavn[i + 1];
i++;
}
}
Det funker ikke.
Forslag?
Videoannonse
Annonse
Skrevet

Hver plass i Arrayet peker til et Objekt i en klasse. Så jeg prøver denne når jeg skriver ut:

if (arrayNavn == null){
arrayNavn = "";
}
Men får opp:
Type missmatch: cannot from String to "navnet på class"
Skrevet

Når du oppretter arrayet, så er det av en bestemt type, f.eks. en klasse som String eller en egendefinert.

Siden du har oppretter arrayet som en type av "navnet på class", så må alle elementene i arrayet være enten et objekt/instans av den klassen, eller null.

Du kan ikke sette den plassen til å peke på String, som er av en annen klasse.

 

Enten må den stå som null, eller må du definere et slags "null-objekt" av den klassen du bruker, slik at du vet at det er null/ingen verdi.

 

 

Angående sorteringen, så kommer det an på hva du ønsker å gjøre med null.

Når du oppretter arrayet, så er det av en fast lengde som ikke kan endres under kjøring. Så selvom du setter plassen til null, så vil plassen alltid eksistere.

Så hvordan man gjør sorteringen vil være avhengig om du velger å ha null null der den er og bare ikke skriver den ut, eller om du ønsker å flytte den bakerst, og stoppe utskrivningen når du kommer til et null-element. Eventuelt kopiere elementene som ikke er null til et nytt array, og returnere det.

Skrevet

Jeg fikk knota det til på et vis, så nå skriver han ikke ut null, og alle null er bakerst i Arrayet :p

 

Men nytt spørsmål. Kan kanskje ta det her i samme slengen:

 

Enkleste måten å konvertere fra String til Int?

Skrevet

Så vidt jeg vet er det Integer.parseInt()-metoden som er enklest.

Den tar inn en string og konverterer den til en int.

Husk å slenge på try-catch og håndtere feilmeldinger om du ikke er alltid sikret at argumentet er et tall i string-form.

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...