1. Mga kapaki-pakinabang na halimbawa ng pagtatrabaho sa mga array:

Sa tingin ko, oras na para magpatuloy sa ilang praktikal na gawain. Magsisimula tayo sa ilan sa pinakasimpleng:

Pagpuno ng hanay ng 10 numero ng mga numero mula 0 hanggang 9:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = i;
}
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Italaga ang mga halaga mula 0 hanggang 9 sa mga cell
Pagpuno ng hanay ng 10 numero ng mga numero mula 1 hanggang 10:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = i + 1;
}
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Italaga ang mga halaga mula 1 hanggang 10 sa mga cell
Pagpuno ng hanay ng 10 numero ng mga numero mula 10 hanggang 1:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = 10 - i;
}
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Italaga ang mga halaga mula 10 hanggang 1 sa mga cell

2. Pagpapakita ng mga numero sa reverse order

Ngayon ay lumipat tayo sa mas kumplikado at kawili-wiling mga halimbawa. Magsisimula tayo sa sumusunod na gawain: basahin ang 10 numero mula sa keyboard at ipakita ang mga ito sa reverse order.

Alam namin kung paano magbasa ng mga numero mula sa keyboard. Ngunit paano tayo magbabasa ng 10 numero? Maaari kaming, siyempre, lumikha ng 10 variable: a1, a2, atbp. Ngunit iyon ay magiging sobrang abala. At paano kung kailangan nating magbasa sa 100 numero? Gagawa ba tayo ng 100 variable? Habang nangyayari ito, natutunan lang namin ang tungkol sa mga array, na nilikha upang mag-imbak ng maraming halaga.

Ang code para sa pagbabasa sa 10 mga halaga ay magiging ganito ang hitsura (ang snippet na ito ay lilitaw sa loob ng mainpamamaraan):

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = console.nextInt();
}
  • Lumikha ng isang Scannerbagay
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Magbasa ng numero mula sa keyboard at i-save ito sa susunod na cell ng array

Ngunit paano mo ipi-print ang mga halaga ng array sa reverse order?

Upang gawin ito, kailangan namin ng isa pang loop, kung saan ikukuha ng mga halaga mula 9 hanggang 0 (huwag kalimutan na ang bilang ng mga indeks ng array ay nagsisimula sa 0). Ang huling program code ay magiging ganito:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = console.nextInt();
}
for (int i = 9; i >= 0; i--) {
   System.out.println(array[i]);
}
  • Lumikha ng isang Scannerbagay
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Magbasa ng numero mula sa keyboard at i-save ito sa susunod na cell ng array
  • Loop mula 9 hanggang 0 (kasama)
  • Ipakita ang susunod na cell sa array


3. Paghahanap ng pinakamababang elemento sa isang array

Tingnan natin ang isang napaka-interesante at karaniwang gawain: paghahanap ng pinakamababang elemento sa isang array. Kukunin namin ang code na ginamit namin upang i-populate ang array sa nakaraang gawain:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
    array[i] = console.nextInt();
}
  • Lumikha ng isang Scannerbagay
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Magbasa ng numero mula sa keyboard at i-save ito sa susunod na cell ng array

Ngayon ang kailangan lang nating gawin ay magsulat ng code na makakahanap ng pinakamababang elemento sa array at ipakita ito sa screen. Paano mo gagawin iyon?

Kaya, upang mahanap ang pinakamababang elemento, kailangan mong:

  • Kunin ang unang elemento ng array bilang "kasalukuyang minimum".
  • Ihambing ang lahat ng mga elemento ng array dito nang paisa-isa
  • Kung ang susunod na elemento ay mas mababa sa "kasalukuyang minimum", pagkatapos ay i-update ang halaga ng "kasalukuyang minimum"

Ganito ang magiging hitsura nito sa code:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
    array[i] = console.nextInt();
}
int min = array[0];

for (int i = 1; i < 10; i++) {
    if (array[i] < min)

       min = array[i];
}
System.out.println(min);
  • Lumikha ng isang Scannerbagay
  • Gumawa ng 10-element array object
  • Loop mula 0 hanggang 9 (kasama)
  • Magbasa ng numero mula sa keyboard at i-save ito sa susunod na cell ng array
  • Ang zeroth na elemento ng array ay kinuha bilang pinakamababang numero
  • Loop mula 1 hanggang 9 (kasama)
  • Kung ang kasalukuyang elemento ay mas mababa sa "kasalukuyang minimum"
  • pagkatapos ay i-update ang halaga ng "kasalukuyang minimum"
  • Ipakita ang nahanap na minimum na numero sa screen