Masīvi

Last modified by superadmin on 2018-01-12 20:39

Masīvi

Masīvs ir fiksēta garuma sakārtots saraksts ar daudziem objektiem, kuriem ir tas pats tips. 

Masīvu deklarēšana

// viendimensiju masīvs
int[] buffer = new int[100];

// Savietojamības dēļ ar C++ var rakstīt arī tā
// (tas ir ļoti slikts stils)
int single[100]; // viendimensiju "int" masīvs
int double[][]; // divdimensiju masīvs
int[] double[]; // tas pats

// viendimensiju masīva inicializācija
int[] m = {1,2,4,8,16,32};

// trīsdimensiju masīvs, kuram pirmā dimensija ir 10
int[][][] three = new int[10][][];

// šāda sintakse nav atļauta:
int[][][] three = new int[][][10];

// netaisnstūrveida 2-dimensiju masīva inicializācija
int[][] two = {{1,2},{3},{4,5,6}};

Masīviem nevar piekļūt ar "pointeru aritmētiku" (jo pointeru Javā nav). Daudzdimensiju masīvi nav obligāti "taisnstūraini"; n-dimensiju masīvs vienkārši ir viendimensiju masīvs no (n-1)-dimensiju masīvu referencēm.

Masīvu darbības

Masīva garums ir a.length, t.i. masīvā ir elementi a[0],...,a[a.length-1]. Piemēram, 

int total = 0; // summē visus masīva "int[] a" elementus:
for (int i = 0; i < a.length; i++) {
  total += a[i];
}

Masīvus var nodot kā anonīmus parametrus funkcijām, kurām gribās masīva argumentus:

java.awt.Polygon p = new Polygon(new int[] {1,3,3},
                                 new int[] {2,4,2}, 3);
Tags:
Created by Kalvis Apsītis on 2008-05-04 16:42
    
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.4 - Documentation