Attach Files..

Download Report

Transcript Attach Files..

LOGO
อะเรย ์
(Array)
ดัดแปลงจาก Nerissa Onkhum
25/04/63
อาจารย ์เณริสสา อ่อนขา
http://mathcom.uru.ac.th/~nerissa/OOP.html
1
Outline
อธิบายความหมายของอะเรย ์
้
แนะนาอะเรย ์ของข ้อมูลชนิ ดพืนฐาน
แนะนาอะเรย ์ของข ้อมูลชนิ ดคลาส
แนะนาอะเรย ์หลายมิติ
25/04/63
2
ความหมายของอะเรย ์
่ นชนิ ดข ้อมูลแบบ
อะเรย ์ในภาษาจาวาคือตัวแปรทีเป็
่
อ ้างอิงทีสามารถใช
้เก็บข ้อมูลชนิ ดเดียวกันได ้หลาย
ค่า
ตัวอย่างเช่น คาสัง่
int []x = new int[5];
อะเรย ์แบ่งเป็ น
้
 อะเรย ์ของข ้อมูลชนิ ดพืนฐาน
25/04/63
3
สมาชิกแต่ละตัวของ Array จะเรียกว่า Element หรือ
่ ้ระบุตาแหน่ งสมาชิกของ Array
Cell
ตัวเลขทีใช
เรียกว่า Index หรือ Subscript
5
8
9
7
3
X[0]
X[1]
X[2]
X[3]
X[4]
่ 5 Element ซึงจะ
่
ตัวอย่าง Array X ทีมี
่ ้นตังแต่
้
เริมต
Index 0 ถึง 4
int a=5;
a=3;
3
5
int a;
int b;
int c;
a
b
้ ่ a ใน ram
พืนที
c
้ ใน
่
พืนที
ram
อาเรย ์ 1 มิต ิ X[0]
X[1]
X[2]
X[3]
X[4]
อาเรย ์ 2 มิตX[0][0]
ิ X[0][1] X[0][2] X[0][3] X[0][4]
X[1][0] X[1][1] X[1][2] X[1][3] X[1][4]
อะเรย ์ของข้อมู ลชนิ ด
้
พืนฐาน
การสร ้างอะเรย์ของข ้อมูลชนิดพืน
้ ฐาน
มีขน
ั ้ ตอนดังนี้
ื่ ตัวแปรอะเรย์
 ประกาศชอ
 สร ้างตัวแปรอะเรย์และจองเนือ
้ ทีใ่ น
หน่วยความจาโดยใชค้ าสงั่ new
25/04/63
8
่ ว
การประกาศชือตั
แปรอะเรย ์
ื่ ตัวแปรของชนิด
รูปแบบคล ้ายกับการประกาศชอ
ข ้อมูลแบบพืน
้ ฐาน แต่การประกาศตัวแปรอะเรย์
จะต ้องมีเครือ
่ งหมาย [ ] อยูด
่ ้านหน ้าหรือ
ื่ ตัวแปรดังนี้
ด ้านหลังชอ
[modifier] dataType []variableName;
หรือ
[modifier] dataType variableName[];
25/04/63
9
่ ว
การประกาศชือตั
แปรอะเรย ์
่ คาสงั่
ตัวอย่างเชน
int x[];
char []ch;
double y[];
ข ้อควรระวัง
คาสัง่ int
[]x,y;
แตกต่างจากคาสัง่
int
x[],y;
25/04/63
10
การสร ้างตัวแปรอะเรย ์
อะเรย์จะถูกสร ้างและจองเนือ
้ ทีใ่ นหน่วยความจา
่ รป
่ งนี ้
โดยใช ้คาสงั่ new ซึงมี
ู แบบของคาสังดั
variableName
=
new dataType[size];
่
ตัวอย่างเชน
x = new int[5];
ch = new char[4];
y = new double[6];
25/04/63
11
่
การรวมคาสังประกาศและสร
้าง
ตัวแปรอะเรย ์
ื่ ตัว
เราสามารถทีจ
่ ะรวมคาสงั่ ประกาศชอ
แปรและคาสงั่ การสร ้างตัวแปรอะเรย์ไว ้ใน
คาสงั่ เดียวกันได ้ โดยมีรป
ู แบบคาสงั่ ดังนี้
dataType []variableName = new dataType[size];
หรือ
dataType variableName[] = new dataType[size];
ตัวอย่างเช่น
25/04/63
int []x = new int[5];
13
การเรียกใช้สมาชิก
ของอะเรย ์
ิ ทีม
ตัวแปรอะเรย์ทส
ี่ ร ้างขึน
้ จะมีสมาชก
่ ห
ี มายเลข
ิ ของ
ตัง้ แต่ 0 จนถึง size-1 การอ ้างอิงถึงสมาชก
ตัวแปรอะเรย์แต่ละตัวจะมีรป
ู แบบดังนี้
variableName[index]
 ตัวอย่างเช่น
x[3]
ิ ของอะเรย์ทาได ้
การเปลีย
่ นแปลงค่าของสมาชก
โดยการใชค้ าสงั่ กาหนดค่า โดยต ้องอ ้างอิงถึง
ิ ของอะเรย์
หมายเลขสมาชก
 ตัวอย่างเช่น
x[0] = 4;
25/04/63
14
ตัวอย่างโปรแกรม
public class SimpleArrays {
public static void main(String args[]) {
int []x;
x = new int[4];
x[0] = 0;
x[1] = 2;
x[2] = 4;
x[3] = 6;
่ จากการร ันโปรแ
ผลลัพธ ์ทีได้
System.out.println("x = "+x);
x = [I@310d42
System.out.println("x[0] = "+x[0]);
x[0] = 0
System.out.println("x[1] = "+x[1]);
x[1] = 2
System.out.println("x[2] = "+x[2]);
x[2] = 4
System.out.println("x[3] = "+x[3]);
x[3] = 6
}
}
25/04/63
15
่ นให้กบ
การกาหนดค่าเริมต้
ั
สมาชิกของอะเรย ์
เราสามารถทีจ
่ ะประกาศตัวแปรอะเรย์
สร ้างตัวแปรอะเรย์
และ
ิ ของอะเรย์ภายใน
กาหนดค่าให ้กับสมาชก
คาสงั่ เดียวกัน โดยมีรป
ู แบบของคาสงั่
ดังนี้
dataType
[]variableName={value1,value2,..,valueN};
25/04/63
16
่
ลาดับทีในอะเรย ์
รูปแบบ
 อะเรย์[อินเด็กซ]์
ตัวแปรทีอ
่ ยูล
่ าดับแรกมีอน
ิ เด็กซเ์ ป็ น 0
ตัวแปรทีอ
่ ยูถ
่ ัดไปคือ 1, 2, 3, ... ตามลาดับ
ตัวแปรทีอ
่ ยูใ่ นลาดับสุดท ้ายของ อะเรย์ มีอน
ิ
์ อ
เด็กซค
ื อะเรย์.length - 1
25/04/63
17
ตัวอย่าง
int[] scores = { 30, 50, 85, 10, 45
};
System.out.println(scores[0]);
System.out.println(scores[score
s.length-1]);
25/04/63
18
ขนาดของอะเรย ์
25/04/63
รู ปแบบ
 อะเรย์.length
ต ัวอย่าง
int[] scores;
scores = new int[50];
System.out.println(scores.lengt
h);
19
ตัวแปรอะเรย ์หลายตัว
การประกาศอาร์เรย์หลายตัวทาได ้ดังนี้
int [] abc , xyz;
abc = new int[500];
xyz = new int[10];
หรือเขียนรวมกันได ้ดังนี้
int[] abc = new int[500], xyz = new int[10];
ข้อควรระวัง
int [] a,b ;
a และ b เป็ น Array
int a[],b ; a เป็ น Array
b ไม่เป็ น Array
int [] a , b;
a = new int[5];
b = new int[3];
a = b ;
a
b
a[0]
b[0]
a[1]
b[1]
a[2]
b[2]
a[3]
a[4]
การอ้างถึงสมาชิกของอะเรย ์
โดยใช้คาสัง่ for
โดยทั่วไปเราจะใชค้ าสงั่ for ในการอ ้างอิงถึง
ิ ของอะเรย์ทต
้ าสงั่ ทีซ
สมาชก
ี่ ้องเรียกใชในค
่ ้ากัน
ภาษาจาวากาหนดให ้ตัวแปรอะเรย์ทก
ุ ตัวมี
ื่ length เพือ
ิ
คุณลักษณะทีช
่ อ
่ ระบุจานวนสมาชก
ของอะเรย์แต่ละตัว
่
ตัวอย่างเชน
int []x = {4,3,5,1,8};
for (int i = 0; i < x.length; i++) {
System.out.println(x[i]); }
25/04/63
22
การอ้างถึงสมาชิกของอะเรย ์โดยใช้
คาสัง่ for
รู ปแบบ
for (int i = 0; i < อะเรย์.length; i++) {
่ั
// คำสงในลู
ปทีใ่ ช ้ อะเรย์[i]
}
ตัวอย่าง
double[] scores = { 30, 50, 85, 10, 45 };
for( int i = 0; i < scores.length; i++) {
System.out.println(scores[i]);
}
25/04/63
23
ตัวอย่างโปรแกรม
public class ForWithArrays {
public static void main(String args[]) {
int []x;
x = new int[4];
for (int i=0; i<x.length; i++) {
x[i] = i*2;
}
System.out.println("x = "+x);
for (int i=0; i<x.length; i++) {
System.out.println("x["+i+"] = "+x[i]);
}
}
25/04/63
}
24
การค ้นหาค่าใน อะเรย์ จะเป็ นการตรวจสอบค่า
ในอะเรย์ทล
ี่ ะ 1 ตาแหน่งว่ามีคา่ ตรงกับทีเ่ รา
้
ค ้นหาหรือไม่ โดยจะใชการค
้นตัง้ แต่ตาแหน่ง 0
ถึงตาแหน่งสุดท ้าย
การเรียงลาดับในอะเรย ์
้
 ใชการสลั
บที่ (swap) ค่าของตาแหน่งในอะเรย์
(คล ้ายกับการเรียงลาดับตัวเลขทีท
่ าในเรือ
่ งของ
if) ซงึ่ จะมีลาดับการทางานดังนี้
1. Array a[ ], int i=0,j=1 สาหรับบอกตาแหน่ง, int
้ กค่าข ้อมูล
temp ใชพั
2. เปรียบเทียบค่าของ a[i] และ a[j]
3. ถ ้าค่าของ a[i] มากกว่า a[j] ให ้ temp = a[j]
4. a[j] = a[i]
5. a[i] = temp
6. ปรับค่า j แล ้วกลับไปทาข ้อสองจนกระทั่ง j มีคา่
เท่ากับความยาวของ a[]
For-each loop
For –each loop (เรียกอีกอย่าง
ว่า Enhanced for loop) เป็ นคาสงั่
ทาซา้ ทีถ
่ ก
ู พัฒนาขึน
้ ใหม่ตงั ้ แต่ตัว
ั่ 5.0 คาสงั่
แปลภาษาจาวาเวอร์ชน
ทาซา้ ประเภทนีช
้ ว่ ยให ้เราสามารถ
ดึงข ้อมูลทัง้ หมดในอะเรย์
25/04/63
27
การอ้างถึงสมาชิกของอะเรย ์โดยใช้
่
คาสัง่ for (แบบทีสอง)
รู ปแบบ
for ( ชนิดข ้อมูลทีเ่ ก็บในอะเรย์ ตัวแปร :
อะเรย์) {
// คาสงั่ ในลูปทีใ่ ช ้ ตวั แปร
}
** การใช ้ for มีข ้อดีคอ
ื ไม่ต ้องใชอิ้ นเด็กซ ์
**
ตัวอย่าง
double[] scores = { 30, 50, 85, 10, 45 };
for( double s : scores) {
25/04/63
28
System.out.println(s);
class BasicArray {
public static void main(String[] args){
final int LIMIT=15, MULTIPLE=10;
้
//ประกาศค่าคงทีส
่ าหรับใชงาน
int[] list=new int[LIMIT];
ื่ list จานวน 15 เซล
//จองอาร์เรย์ชอ
for(int index=0; index<LIMIT; index++)
//วนลูป 15 ครัง้
list[index]=index*MULTIPLE;
์ าคูณกับ 10 แล ้วเก็บในเซล
//นาค่าอินเด็กซม
list[5]=999;
//เปลีย
่ นเซลทีห
่ กเป็ น 999
for(int value : list)
ื่ list
//วนลูปแสดงผลข ้อมูลในอาร์เรย์ชอ
System.out.print(value+" ");
ข้อผิดพลาดประเภท
ArrayIndexOutOfBoundException
ิ ของอะเรย์ทไี่ ม่
การอ ้างอิงถึงหมายเลขสมาชก
ถูกต ้องจะทาให ้เกิดข ้อผิดพลาดในตอนรัน
ื่
โปรแกรมโดยโปรแกรมจะสง่ ข ้อผิดพลาดทีช
่ อ
ArrayIndexOutOfBoundException ออกมา
ในขณะรันโปรแกรม
่ คาสงั่
ตัวอย่างเชน
int []x = {4,3,5,1,8};
การอ
้างอิง x[5] จะทาให ้เกิดข ้อผิดพลาดในตอน30
25/04/63
class TestArray{
public static void main(String s[]){
int c[]={1,3,5,7,3,8};
for (int i=1;i<=c.length;i++)
System.out.println(c[i]);
}
}
อะเรย ์ของข้อมู ลชนิ ด
คลาส
 ตัวแปรอะเรย์ของข ้อมูลชนิดคลาสคือตัว
้ บกลุม
ิ ทีเ่ ป็ น
แปรทีใ่ ชเก็
่ ของข ้อมูลสมาชก
ออปเจ็คของคลาสใดคลาสหนึง่
 ขัน
้ ตอนการสร ้างตัวแปรอะเรย์ของข ้อมูล
ชนิดคลาสจะมีขน
ั ้ ตอนคล ้ายกับขัน
้ ตอน
การสร ้างตัวแปรอะเรย์ของข ้อมูล ชนิด
พืน
้ ฐาน โดยมีขน
ั ้ ตอนต่างๆดังนี้
 ประกาศตัวแปรอะเรย์
25/04/63
32
การสร ้างอะเรย ์ของ
ข้อมู ลชนิ ดคลาส
สาหรับการสร ้างอะเรย์ของข ้อมูลชนิด
คลาส คาสงั่ new
จะจอง
เนือ
้ ทีใ่ นหน่วยความจาสาหรับเก็บค่า
ิ ของอะเรย์ ซงึ่ จะเป็ นเพียง
ของสมาชก
แค่ตาแหน่งอ ้างอิงเท่านัน
้
ดังนัน
้ จะต ้องมีการเรียกใชค้ าสงั่ new
อีก เพือ
่ สร ้างออปเจ็คของคลาสให ้กับ
ิ แต่ละตัวของอะเรย์
สมาชก
25/04/63
33
ตัวอย่างการสร ้างอะเรย ์ของ
ข้อมู ลชนิ ดคลาส
1
2
3
4
Student []s = new Student[3];
s[0] = new Student(“Thana”);
s[1] = new Student(“Somchai”);
s[2] = new Student(“Somsak”);
 คาสงั่ ในบรรทัดที่ 1 เป็ นการประกาศตัวแปรและ
ิ
สร ้างอะเรย์ของข ้อมูลชนิดคลาส Student ทีม
่ ส
ี มาชก
3 ตัว
 คาสงั่ ในบรรทัดที่ 2-4 เป็ นการสร ้างออปเจ็คให ้กับ
ิ แต่ละตัวของ อะเรย์ ของข ้อมูลชนิดคลาส
สมาชก
Student ซงึ่ ใชค้ าสงั่ new ในการเรียก Constructor 34
25/04/63
่
การรวมคาสังในการสร
้างอะเรย ์
และสร ้างออปเจ็ค
่ ้ว
จากตัวอย่างทีแล
Student []s = new Student[3];
s[0] = new Student(“Thana”);
s[1] = new Student(“Somchai”);
s[2] = new Student(“Somsak”);
่ ใช
่ ้ในการสร ้างอะเรย ์ของข ้อมูลชนิ ด
เราสามารถรวมคาสังที
่ ใช
่ ้ในการสร ้างออปเจ็คให ้กับสมาชิกแต่ละ
คลาส และคาสังที
ตัวของอะเรย ์ได ้ดังนี ้
Student []s = {
25/04/63
new Student(“Thana”),
new Student(“Somchai”),
new Student(“Somsak”)};
35
การเก็บค่าของตัว
แปรอะเรย ์
กรณีอะเรย์ของข ้อมูลชนิดคลาส ข ้อมูล
ิ แต่ละตัวของอะเรย์จะเก็บตาแหน่ง
สมาชก
อ ้างอิงของหน่วยความจา ซงึ่ จะอ ้างอิงไป
ถึงข ้อมูลของออปเจ็คอีกที
ตัวอย่าง
Student s1
25/04/63
=
new
Student("Somsri");
Student []s = {new Student(“Thana”),
new Student(“Somchai”),
new Student(“Somsak”)}; 36
รู ปแสดงตัวอย่างการเก็บค่าใน
หน่ วยความจา
25/04/63
37
ตัวอย่างโปรแกรมอะเรย ์ข้อมู ล
ชนิ ดคลาส
public class Student {
private String name;
public Student(String n) {
name = n;
}
public String getName() {
return name;
}
}
25/04/63
38
ตัวอย่างโปรแกรมอะเรย ์
ข้อมู ลชนิ ดคลาส
public class TestClassArrays {
public static void main(String args[]) {
Student []s
= { new Student(“Thana”),
new Student(“Somchai”),
new Student(“Somsak”)};
for(int i=0; i<s.length; i++) {
System.out.print(s[i].getName()+"
");
}
}
}
่ ้จากการร ันโปรแกรม
ผลลัพธ ์ทีได
Thana
25/04/63
Somchai
Somsak
39
อะเรย ์สองมิต ิ
การประกาศตัวแปรอะเรย์ทม
ี่ ข
ี นาดมากกว่าหนึง่
มิตท
ิ าได ้โดยการเพิม
่ เครือ
่ งหมาย [ ] ในแต่ละ
มิต ิ
รูปแบบการประกาศตัวแปรอะเรย ์สองมิตเิ ป็ นดังนี้
[modifier] dataType [][]variableName;
หรือ
[modifier] dataType variableName[][];
่
ตัวอย่างเชน
int [][]x;
25/04/63
40
อะเรย ์สองมิต ิ
รูปแบบการสร ้างตัวแปรอะเรย ์สองมิตเิ ป็ นดังนี้
variableName = new dataType[row][col];
่
ตัวอย่างเชน
x = new int[3][4];
รูปแบบการเรียกใช ้สมาชิกของอะเรย ์สองมิตเิ ป็ นดังนี้
variableName[row_number][col_number];
่
ตัวอย่างเชน
x[2][3];
25/04/63
41
อะเรย ์สองมิต ิ
ลักษณะเป็ นตาราง
25/04/63
42
การสร ้างอะเรย ์สองมิต ิ
รู ปแบบ
 ชนิ ดข้อมู ล[][] ตัวแปร = { อะเรย ์แถวแรก,
่
อะเรย ์แถวทีสอง,
... };
ตัวอย่าง
int[][] table = { { 1, 2, 3, 4},{ 5, 6, 7,
8}, { 9, 10, 11, 12}};
25/04/63
43
การระบุตาแหน่ งของตัวแปรในอาร ์เรย ์
สองมิต ิ
25/04/63
44
การใช้งานอาร ์เรย ์สองมิต ิ
ประกาศ
 int[][] table;
จองพืน
้ ที่
 table = new int[3][4];
อ ้างถึง




25/04/63
table[0][0] = 3;
table[0][1] = 5;
table[0][2] = 8;
table[0][3] = 7;
45
แต่ละแถวของอะเรย ์สองมิตไิ ม่
จาเป็ นต้องมีขนาดเท่ากัน
25/04/63
46
่ ละแถวมี
ตัวอย่างอาร ์เรย ์ทีแต่
ขนาดไม่เท่ากัน
int[][] twoD = { { 1,
{ 4,
{ 8,
2, 3},
5, 6, 7},
9, 10, 11, 12}};
System.out.println(twoD[1][2]);
25/04/63
47
LOGO
อะเรย ์สามมิต ิ
25/04/63
48
อะเรย ์สามมิต ิ
25/04/63
49
การระบุตาแหน่ งของตวั แปรใน
อาร ์เรย ์สามมิต ิ
ใชอิ้ นเด็กซ ์ 3 ตัว
รูปแบบ
 อาร์เรย์[แผ่น][แถว][คอลัมน์]
25/04/63
50
ต ัวอย่างการระบุตาแหน่ งของตวั แปรใน
อาร ์เรย ์สามมิต ิ
int[][][] array
= {
{
{3,5,8,7},
{1,2,6,4},
{8,4,1,2}
},
{
{1,5,8,4},
{5,6,2,3},
{8,7,5,0}
},
{
{7,8,3,4},
{2,1,9,2},
{8,4,5,6}
อยู ่ตาแหน่ งใดใน
อาร ์เรย ์
}
};
System.out.println(array[1][2][3]);
25/04/63
51
LOGO
คลาส Arrays
25/04/63
52
เมธอดในคลาส
java.util.Arrays
้ อ
sort() ใชเพื
่ เรียงลาดับข ้อมูลใน
อาร์เรย์
binarySearch() ใชค้ ้นหาข ้อมูลใน
อาร์เรย์
 ผลของการค ้นหาคืออินเด็กซ ์
(ตาแหน่ง)ในอาร์เรย์
 ก่อนทีจ
่ ะค ้นหาเราต ้องเรียงลาดับ
25/04/63
53
การเรียงจานวนเต็มโดยใช้
คลาส Arrays
java.util.Arrays.sort(score);
25/04/63
54
ตัวอย่างการเรียงลาดับ
จานวนเต็ม
int[]
score={45,5,87,13,24};
Arrays.sort(score);
หรือ
int[]
score={45,5,87,13,24};
25/04/63
55
การเรียงวัตถุโดยใช้คลาส
Arrays
{"Jamies", "Amy", "Leo", "James"}
import java.util.Arrays;
...
Arrays.sort(names);
{"Amy", "James", "Jamies", "Leo"}
25/04/63
56
การเรียงวัตถุโดยใช้คลาส
Arrays
import java.util.Arrays;
public class SortString {
Import คลาส
อาร ์เรย ์เข้ามาใช้
public static void main(String[] args) {
String[] names = { "Jamies", "Amy", "Leo", "James" };
Arrays.sort(names);
System.out.println(Arrays.asList(names));
}
}
25/04/63
่ งหมด
้
พิมพ ์ชือทั
ในอาร ์เรย ์ 57
่
การเรียงชือภาษาไทย
(แบบผิด)
Arrays.sort(names);
วัตถุในคลาส String ไม่
รู ้จักวิธก
ี ารเปรียบเทียบ
คาในภาษาไทย ??!?
25/04/63
58
่
การเรียงชือภาษาไทย
String[] names = { "อร", "เป็ ด", "กนก", "ป๊ อบ", "ไก่" };
java.text.Collator myCollator = java.text.Collator.getInstance();
สร ้างว ัตถุทรูี่ ้จักการ
System.out.println(Arrays.asList(names));เรียงคาในภาษาไทย
Arrays.sort(names, myCollator);
[กนก, ไก่, ป๊ อบ, เป็ ด, อร]
25/04/63
59
การค้นหาโดยใช้คลาส
Arrays
เมธอด binarySearch( )
 ถ ้าพบ จะสง่ ตาแหน่งทีพ
่ บกลับมาให ้
 ถ ้าไม่พบ จะสง่ ค่าติดลบมาให ้
25/04/63
60
ตัวอย่างการค้นหา
int[] id = {51, 3, 81, 20, 14};
Arrays.sort(id);
int index = Arrays.binarySearch(id, 51);
System.out.println(index);
25/04/63
61
้
สรุปเนื อหาของบท
โดยทั่วไปโครงสร ้างข ้อมูลแบบอะเรย์จะถูกนามาใช ้
เมือ
่ ต ้องการเก็บข ้อมูล ชนิดเดียวกันหลายค่า แต่ใช ้
ตัวแปรอะเรย์ตัวเดียวกัน
อะเรย์แบ่งออกได ้เป็ น 2 ประเภท คืออะเรย์ของ
ข ้อมูลชนิดพืน
้ ฐานและอะเรย์ ของข ้อมูลชนิดคลาส
ขัน
้ ตอนในการสร ้างอะเรย์ของข ้อมูลชนิดพืน
้ ฐานคือ
การประกาศตัวแปร อะเรย์ และการสร ้างอะเรย์
ขัน
้ ตอนในการสร ้างอะเรย์ของข ้อมูลชนิดคลาสคือ
การประกาศตัวแปรอะเรย์
การสร ้างอะเรย์
25/04/63
62
ิ แต่ละตัว
และการสร ้างออปเจ็คให ้กับสมาชก
้
สรุปเนื อหาของบท
ขนาดของอะเรย์ สามารถหาได ้จาก
ื่ ว่า length
คุณลักษณะทีช
่ อ
้
คาสงั่ for นิยมนามาใชในการอ
้างถึง
ิ ของอะเรย์
สมาชก
เราสามารถสร ้างอะเรย์หลายมิตไิ ด ้ โดย
จานวนเครือ
่ งหมาย [ ] บ่งบอกถึงจานวน
มิตข
ิ องอะเรย์
่ ยในการ
คลาส
java.util.Arrays
มี
เ
มธอดที
ช
่
ว
25/04/63
63
แบบฝึ กทักษะการเขียน
โปรแกรม
1. สร ้างอาร์เรย์เก็บข ้อความขนาด 2 ตัว โดย
ื่ ตาแหน่ง
ตาแหน่งแรกให ้เก็บชอ
ึ ษา และแสดงค่า
ทีส
่ องนามสกุลของนักศก
อาร์เรย์นัน
้
2. เขียนโปรแกรมพิมพ์คา่ ในอาร์เรย์ตอ
่ ไปนี้
{10,20,30,40,50}
3. จากข ้อ 2 ให ้แสดงค่าในอาร์เรย์จากขวาสุดไป
้ ด
ซายสุ
4.
เขียนโปรแกรมเรียงลาดับค่าในอาร์เรย์
25/04/63
64
แบบทดสอบ
่ อประกาศตั
่
จงเขียนคาสังเพื
วแปรอาร ์เรย ์ ตามคาอธิบาย
ในแต่ละข้อต่อไปนี ้
ื่ num เพือ
1. ตัวแปรอาร์เรย์ 1 มิตช
ิ อ
่ เก็บจานวนเต็ม 12
จานวน และกาหนดให ้มีคา่ เริม
่ ต ้นดังนีค
้ อ
ื
1,4,7,10,13,16,19,22,25,28,31,34
ื่ x ขนาด 3x4 เพือ
2. ตัวแปรอาร์เรย์ 2 มิตช
ิ อ
่ เก็บตัวเลข
ทศนิยม
ื่ str เพือ
3. ตัวแปรอาร์เรย์ 1 มิตช
ิ อ
่ เก็บข ้อความ uttaradit
ื่ account เพือ
4. ตัวแปรอาร์เรย์ชอ
่ เก็บ ข ้อมูลทัง้ รายรับ
และรายจ่ายประจาปี โดยแจกแจงเป็ นเดือนตัง้ แต่เดือน
ที่ 1 ถึงเดือนที่ 12
ื่ volumn เพือ
5. ตัวแปรอาร์เรย์ชอ
่ เก็บข ้อมูลยอดขายของ
65
พนักงานจานวน 20 คน โดยแจกแจงเป็ นไตรมาสที่ 1
แบบทดสอบ
7. กาหนดอาร์เรย์ตอ
่ ไปนี้
int[] num={ {1,2,3}, {4,5,6}, {7,8,9} }
เลข 5 อยูต
่ าแหน่งใดในอาร์เรย์
25/04/63
66
LOGO
25/04/63
67