1. ตัวอย่างที่เป็นประโยชน์ของการทำงานกับอาร์เรย์:

ฉันคิดว่าถึงเวลาแล้วที่จะต้องย้ายไปปฏิบัติภารกิจบางอย่าง เราจะเริ่มด้วยวิธีที่ง่ายที่สุด:

เติมอาร์เรย์ 10 ตัวเลขด้วยตัวเลขตั้งแต่ 0 ถึง 9:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = i;
}
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • กำหนดค่าตั้งแต่ 0 ถึง 9 ให้กับเซลล์
เติมอาร์เรย์ 10 ตัวเลขด้วยตัวเลขตั้งแต่ 1 ถึง 10:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = i + 1;
}
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • กำหนดค่าตั้งแต่ 1 ถึง 10 ให้กับเซลล์
เติมอาร์เรย์ 10 ตัวเลขด้วยตัวเลขตั้งแต่ 10 ถึง 1:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = 10 - i;
}
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • กำหนดค่าจาก 10 ถึง 1 ให้กับเซลล์

2. การแสดงตัวเลขในลำดับย้อนกลับ

ตอนนี้เรามาดูตัวอย่างที่ซับซ้อนและน่าสนใจมากขึ้น เราจะเริ่มต้นด้วยงานต่อไปนี้: อ่านตัวเลข 10 ตัวจากแป้นพิมพ์และแสดงในลำดับย้อนกลับ

เรารู้วิธีการอ่านตัวเลขจากแป้นพิมพ์ แต่เราอ่านเลข 10 ได้อย่างไร? แน่นอน เราสามารถสร้างตัวแปรได้ 10 ตัว: a1, a2, ฯลฯ แต่นั่นจะไม่สะดวกอย่างยิ่ง แล้วถ้าเราต้องอ่านเป็นตัวเลข 100 ตัวล่ะ? เราจะสร้าง 100 ตัวแปรหรือไม่? เราเพิ่งเรียนรู้เกี่ยวกับอาร์เรย์ซึ่งสร้างขึ้นเพื่อเก็บค่าจำนวนมาก

โค้ดสำหรับการอ่านค่า 10 ค่าจะมีลักษณะดังนี้ (ส่วนย่อยนี้จะปรากฏในเมธอดmain):

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = console.nextInt();
}
  • สร้างScannerวัตถุ
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • อ่านตัวเลขจากแป้นพิมพ์และบันทึกไว้ในเซลล์ถัดไปของอาร์เรย์

แต่คุณจะพิมพ์ค่าของอาร์เรย์ในลำดับย้อนกลับได้อย่างไร

ในการทำเช่นนี้ เราต้องการการวนซ้ำอีกหนึ่งรอบ ซึ่งiจะใช้ค่าตั้งแต่ 9 ถึง 0 (อย่าลืมว่าจำนวนของดัชนีอาร์เรย์เริ่มต้นจาก 0) รหัสโปรแกรมสุดท้ายจะมีลักษณะดังนี้:

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]);
}
  • สร้างScannerวัตถุ
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • อ่านตัวเลขจากแป้นพิมพ์และบันทึกไว้ในเซลล์ถัดไปของอาร์เรย์
  • วนซ้ำตั้งแต่ 9 ถึง 0 (รวม)
  • แสดงเซลล์ถัดไปในอาร์เรย์


3. การค้นหาองค์ประกอบขั้นต่ำในอาร์เรย์

มาดูงานที่น่าสนใจและทั่วไปกัน: การค้นหาองค์ประกอบขั้นต่ำในอาร์เรย์ เราจะคว้ารหัสที่เราใช้ในการเติมอาร์เรย์ในงานก่อนหน้า:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
    array[i] = console.nextInt();
}
  • สร้างScannerวัตถุ
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • อ่านตัวเลขจากแป้นพิมพ์และบันทึกไว้ในเซลล์ถัดไปของอาร์เรย์

ตอนนี้สิ่งที่เราต้องทำคือเขียนโค้ดที่จะค้นหาองค์ประกอบขั้นต่ำในอาร์เรย์และแสดงบนหน้าจอ คุณทำอย่างนั้นได้อย่างไร?

ในการค้นหาองค์ประกอบขั้นต่ำคุณต้อง:

  • ใช้องค์ประกอบแรกของอาร์เรย์เป็น "ค่าต่ำสุดปัจจุบัน"
  • เปรียบเทียบองค์ประกอบทั้งหมดของอาร์เรย์กับมันทีละรายการ
  • หากองค์ประกอบถัดไปน้อยกว่า "ขั้นต่ำปัจจุบัน" ให้อัปเดตค่าของ "ขั้นต่ำปัจจุบัน"

นี่คือลักษณะที่ปรากฏในรหัส:

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);
  • สร้างScannerวัตถุ
  • สร้างวัตถุอาร์เรย์ 10 องค์ประกอบ
  • วนซ้ำตั้งแต่ 0 ถึง 9 (รวม)
  • อ่านตัวเลขจากแป้นพิมพ์และบันทึกไว้ในเซลล์ถัดไปของอาร์เรย์
  • องค์ประกอบที่ศูนย์ของอาร์เรย์ถือเป็นจำนวนขั้นต่ำ
  • วนซ้ำตั้งแต่ 1 ถึง 9 (รวม)
  • หากองค์ประกอบปัจจุบันน้อยกว่า "ขั้นต่ำปัจจุบัน"
  • จากนั้นอัปเดตค่าของ "ขั้นต่ำปัจจุบัน"
  • แสดงจำนวนขั้นต่ำที่พบบนหน้าจอ