Caracterele de caractere

elementele sunt -1. Astfel, doar trei elemente unice și trei elemente cu valoarea -1, celelalte sunt egale cu zero.

Listarea 3.4. Crearea unei matrice 3D

public static void principal (String [] args)

// Variabilele indexului: int i, j, k;

// Elemente zero ale matricei: pentru (i = 0; i<3;i++) for(j=0;j<3;j++) for(k=0;k<3;k++) epsilon[i][j][k]=0;

// Elemente matrice individuale: epsilon [0] [1] [2] = epsilon [1] [2] [0] = epsilon [2] [0] [1] = 1;

// Elementele cu o valoare de -1: epsilon [1] [0] [2] = epsilon [0] [2] [1] = epsilon [2] [1] [0] = - 1;

Declară o comandă tridimensională matrice octet epsilon [] [] [] epsilon = new byte [3] [3] [3]. Pentru a fi sigur, toate elementele de matrice sunt valori zero, care utilizează trei bucle imbricate. comandă suplimentară epsilon [0] [1] [2] = epsilon [1] [2] [0] = epsilon [2] [0] [1] = 1 sunt valori unitare pentru cele trei elemente ale șirului și o altă importanță trei elemente - 1 (comanda epsilon [1] [0] [2] = epsilon [0] [2] [1] = epsilon [2] [1] [0] = - 1).

- Nu vezi? Trage!

- Un mod ciudat de a decora o casă cu un monogram de regină.

Din filmul "Aventurile lui Sherlock Holmes și Dr. Watson"

În limbajul de programare C ++, matricele de caractere au un areol special, deoarece matricele de caractere reprezintă unul dintre mijloacele de implementare a șirurilor de text. În Java, în ceea ce privește matricele de caractere, totul este mult mai simplu - este o matrice obișnuită din punct de vedere al creației și aplicării, ale cărei elemente sunt simboluri. Adevărat, în Java, în utilizarea de matrice de caractere, există unele caracteristici. Cu toate acestea, aceste caracteristici sunt mai degrabă corelate

cu tipul de caractere specific. decât cu structura sau proprietățile matricei în sine. Lista 3.5 arată un exemplu simplu.

Listing 3.5. Matricea de caractere

public static void principal (String [] args)

Listing 3.6. Codarea cuvintelor

public static void principal (String [] args)

pentru (int i = 0; i

Programul efectuează o codare destul de simplă a cuvântului scris în matricea cuvintelor. Această matrice este declarată și inițializată cu valorile elementelor corespunzătoare cuvântului Word. Apoi este declarat un alt cod simbolic. Dimensiunea sa este egală cu mărimea matricei cuvintelor. Completarea elementelor matricei de coduri se face în cadrul instrucțiunii buclă. Pentru aceasta, folosiți codul de comandă [i] = (char) (cuvintele [i] + i + 1) în corpul bucla.

În acest caz, expresiile de calcul ale cuvintelor [i] + i + 1 cuvinte simbolul [i] este convertit într-un format numeric (cod de caractere), și la acesta se adaugă o valoare i + 1. Numărul rezultat se datorează exprimării explicite

Alocarea și compararea matricelor

este convertită la un simbol. Acest caracter este scris în matricea de coduri. Apoi se afișează ambele tablouri. Ca urmare a programului, obținem următoarele:

Pentru a "decripta" cuvântul "primit", puteți aplica procedura inversă. Vă sugerăm cititorului să o facă el însuși.

Alocarea și compararea matricelor

Lucrurile simple sunt uitate cum să faci!

Din filmul "Aventurile lui Sherlock Holmes și Dr. Watson"

În principiu, o matrice poate fi atribuită ca valoare unei alte matrice, dacă se potrivesc tipurile. Arterele pot fi, de asemenea, comparate. Adevărat, toate aceste operații sunt realizate destul de specific și într-o oarecare măsură pot surprinde. Pentru a minimiza o astfel de surpriză, este logic să ne ocupăm din nou de ceea ce este o matrice și de modul în care implementarea ei tehnică este legată de construcțiile sintactice ale limbajului Java.

O variabilă care denotă o matrice (variabilă a matricei) este declarată indiferent de alocarea reală a memoriei pentru matrice. Cu alte cuvinte, matricea însăși și variabila matricei sunt departe de același lucru. În acest sens, procesul de creare a unei matrice în două etape (două echipe) este orientativ. De exemplu:

Capitolul 3. Arrays

Nums mennoy. Acum este ușor să ghici ce rezultă din următoarele comenzi:

int [] numere, date; nums = nouă int []; date = nums;

Atunci când se compară matrice folosind bine operatorii și nu este egal ==! = (De exemplu, Nums == date sau Nums! = Date) compară valorile variabilelor de matrice, mai degrabă decât elementele din aceste matrice. Prin urmare, rezultatul expresiei nums == date este adevărat. Dacă ambele variabile matrice numere și date se referă la aceeași matrice.

Un exemplu de program în care are loc o alocare de tablouri este prezentat în listare 3.7.

Listing 3.7. Alocarea unui tablou

public static void principal (String [] args)

Programul declară două matrice întregi: o serie de numere de 10 elemente și o matrice de date de 20 de elemente. Cu ajutorul instrucțiunii buclă, aceste matrice sunt umplute: matricea nums este umplută cu numere impare, matricea de date este uniformă. După aceasta, utilizând datele de comandă = numere la datele de matrice, este atribuită o valoare de matrice ca valoare. Atenția noastră este că, deși aceste mănunchiuri au

Alocarea și compararea matricelor

același tip, au dimensiuni diferite. Apoi, cu ajutorul unei alte instrucțiuni de buclă, elementele matricei de date sunt afișate cu un interval de o linie (pentru a imprima valorile fără a merge la o linie nouă, utilizați metoda print ()). Ca rezultat, obținem o serie numerică:

1 3 5 7 9 11 13 15 17 19

Acestea sunt valorile prin care a fost inițializată matricea nums. Interesul în acest caz este faptul că într-o instrucțiune de buclă care furnizează ieșirea de valori ale datelor din matrice. limita superioară pentru indicii elementelor matricei este determinată prin proprietatea de lungime a datelor din matrice. Matricea a fost inițializată cu o dimensiune de 20 și, în cele din urmă, dimensiunea acesteia era egală cu 10! Motivul este evident. După executarea comenzii data = nums, variabila matricei de date începe să se refere la aceeași matrice cu variabila array nums.

Caracteristicile comparării matricelor pentru egalitate (inegalitate) sunt ilustrate de codul programului din listare 3.8.

Listing 3.8. Comparând Arrays

public static void principal (String [] args)

// Verificați dacă se potrivesc legăturile:

System.out.println ("Matrice coincide!"); return;>

// Verificarea elementelor pentru matrice: pentru (int i = 0; iSystem.out.println ("Elemente nepotrivite!"); întoarcere; >>

Programul este conceput pentru a compara două matrice întregi. Programul declară două numere întregi și matrice de date și este inițializat cu același set de valori. Apoi testul este efectuat direct. Se compune din trei etape. În primul rând, verificăm egalitatea variabilelor dintre numerele și matricele de date. Dacă referințele sunt egale, atunci, evident, matricele sunt aceleași (coincid). Se efectuează verificarea egalității referințelor la matrice

Articole similare