/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Arrays
Fra : Morten Winther


Dato : 25-09-02 20:07

Hej

Kommer fra PHP og ved ikke det store om Java og har derfor lidt startprobs:

I PHP kan jeg skrive

$navn[] = "ja";
$navn[] = "Nej";

Men i java skal man først sætte længen på et array?

Nu jeg så vil smide elementerne ud i en for løkke er der jo en masse tomme
pladser - hvordan trim'er jeg arrayet så de tomme pladser forsvinder.

Hvis jeg skal skrive et program der måske skal bruge 10 eller 10.000
elementer i et array hvordan gør man det så smartest?

Kan man ikke bruge strings som elementindeks?

$mitarray['hej'] = "jubii";

/ morten



 
 
Soren 'Disky' Reinke (25-09-2002)
Kommentar
Fra : Soren 'Disky' Reinke


Dato : 25-09-02 20:19


"Morten Winther" <news@mwi.dk> wrote in message
news:amt1bb$b6a$1@news.cybercity.dk...
> Hej
>
> Kommer fra PHP og ved ikke det store om Java og har derfor lidt
startprobs:
>
> I PHP kan jeg skrive
>
> $navn[] = "ja";
> $navn[] = "Nej";
>
> Men i java skal man først sætte længen på et array?
>
> Nu jeg så vil smide elementerne ud i en for løkke er der jo en masse tomme
> pladser - hvordan trim'er jeg arrayet så de tomme pladser forsvinder.
>
> Hvis jeg skal skrive et program der måske skal bruge 10 eller 10.000
> elementer i et array hvordan gør man det så smartest?

Et array er statisk, så du har brug for et dynamisk array.

Brug derfor en ArrayList til dette istedet.

>
> Kan man ikke bruge strings som elementindeks?
>
> $mitarray['hej'] = "jubii";

Jo men så skal du bruge en HashMap istedet.


--
Med venlig hilsen
Søren Reinke
http://www.dykkercenterlangeland.dk



Anders K. Olsen (25-09-2002)
Kommentar
Fra : Anders K. Olsen


Dato : 25-09-02 20:21

"Morten Winther" <news@mwi.dk> skrev i en meddelelse
news:amt1bb$b6a$1@news.cybercity.dk...
> Hej
>
> Kommer fra PHP og ved ikke det store om Java og har derfor lidt
startprobs:
>
> I PHP kan jeg skrive
>
> $navn[] = "ja";
> $navn[] = "Nej";
>
> Men i java skal man først sætte længen på et array?

Jeps, et array har en fast længe når det oprettes. Den kan ikke ændres, men
du kan sagtens allokere et nyt array og kopiere de dele af det gamle du har
brug for. Et alternativ kan dog være at bruge en java.util.Vector eller et
andet objekt fra java.util pakken.

> Nu jeg så vil smide elementerne ud i en for løkke er der jo en masse tomme
> pladser - hvordan trim'er jeg arrayet så de tomme pladser forsvinder.

Det gør du ikke med et array.

> Hvis jeg skal skrive et program der måske skal bruge 10 eller 10.000
> elementer i et array hvordan gør man det så smartest?

Et array allokeres først på runtime, så du kan bare angive længen som en
variable når det oprettes fx.:

int size = <et eller andet passende>
String[] myArray = new String[size];

> Kan man ikke bruge strings som elementindeks?
>
> $mitarray['hej'] = "jubii";

Nej, det kan man ikke i et array. Det du er ude efter er en måde at gemme
nøgle/værdi par. Det kan du i et java.util.Map som fx. HashMap. Her kan du
bruge Objects som nøgler, så længe de har en passende implementering af
Object.equals() og Object.hasCode(), men det har String klassen.

Prøv at kikke lidt på java.util pakken. Der er faktisk mange måder at
representere mængder af data på.

/Anders.



Morten Winther (25-09-2002)
Kommentar
Fra : Morten Winther


Dato : 25-09-02 20:54


"Anders K. Olsen" <ako@post4.tele.dk> wrote

> Prøv at kikke lidt på java.util pakken. Der er faktisk mange måder at
> representere mængder af data på.

Tak for jeres svar Disky & Anders.

/ morten



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste