งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Java Array And String โดย อ. นัฐพงศ์ ส่งเนียม http://www.siam2dev.com xnattapong@homtail.com nattapong@siam2dev.com.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Java Array And String โดย อ. นัฐพงศ์ ส่งเนียม http://www.siam2dev.com xnattapong@homtail.com nattapong@siam2dev.com."— ใบสำเนางานนำเสนอ:

1 Java Array And String โดย อ. นัฐพงศ์ ส่งเนียม

2 Java Array แอร์เรย์ (Array)
หมายถึง กลุ่ม (group) ของข้อมูลที่เป็นประเภทเดียวกัน Array ในภาษาจาวา ไม่ใช่เป็นเพียงเนื้อที่ในหน่วยความจำที่จองไว้สำหรับประเภทข้อมูล แต่เป็นวัตถุ (Object) เป็นกลุ่ม (group) ของข้อมูลที่เป็นประเภทเดียวกัน (ทั้งประเภท Primitive Data Type และ Reference Type)

3 Declare A as an Array of Character
Examples of Java Array Element Index Length=3 [0] [1] [2] xxx ‘a’ ‘b’ ‘c’ yyy Memory Address zzz Memory Address aaa Declare A as an Array of Character A

4 Declaring Array in Java
type[ ] variable; หรือ type variable[ ]; ประกาศตัวแปร Array เพื่อเป็นตัวอ้างอิงไปยัง Array เป็นการจองเนื้อที่สำหรับตัวแปรอ้างอิง (Reference Variable) ไม่ระบุขนาดของ Array ค่า Default value เป็น null Array เป็น Object???

5 Examples of Declaring Array
int[ ] i; หรือ int i[ ]; int[ ] i,j; หรือ int i[ ], j[ ]; double[ ] d; หรือ double d[ ]; char[ ] A; หรือ char A[ ]; BankAccount[ ] ba; หรือ BankAccount ba[ ]; Point[ ] pt; หรือ Point pt[ ];

6 Declare C as an Array of Character
Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type char[ ] c; c = new char[26]; for (int i=0; i<26; i++) { 4 c[i] = (char)('a'+i); } YYY Memory Address XXX Declare C as an Array of Character c After Line 1 null

7 Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type
char[ ] c; c = new char[26]; for (int i=0; i<26; i++) { 4 c[i] = (char)('a'+i); } aaa Memory Address XXX C Element Index Length=26 [0] [1] [2] YYY bbb zzz ccc [25] After Line 2 null Declare C as an Array of Character YYY Memory Address XXX C Executing Line 2 null Declare C as an Array of Character aaa Memory Address XXX C Element Index Length=26 [0] [1] [2] YYY bbb zzz ccc [25] Executing Line 2 null Declare C as an Array of Character

8 Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type
char[ ] c; c = new char[26]; for (int i=0; i<26; i++) { 4 c[i] = (char)('a'+i); } aaa Memory Address XXX C Element Index Length=26 [0] [1] [2] ‘b’ bbb zzz ccc [25] After Line 3 and 4 null Declare C as an Array of Character YYY ‘z’ ‘c’ ‘a’ Memory Address aaa XXX C Element Index Length=26 [0] [1] [2] YYY bbb zzz ccc [25] Executing Line 3 and 4 null Declare C as an Array of Character ‘a’

9 Declare C as an Array of Character
Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type char[ ] c; c = new char[26]; for (int i=0; i<26; i++) { 4 c[i] = (char)('a'+i); } aaa Memory Address XXX C Element Index Length=26 [0] [1] [2] ‘b’ bbb zzz ccc [25] After Line 5 null Declare C as an Array of Character YYY ‘z’ ‘c’ ‘a’

10 Initializing an Array BankAccount account[ ];
account = new BankAccount[3]; account[0] = new BankAccount(1000); account[1] = new BankAccount(0); account[2] = new BankAccount (23052); int data[ ]; data = new int[5]; for (int i=10; I < data.length; i--) data[i] = i % 2; Array Bounds int a[ ] = { 2, 4, 6, 8, 10 };

11 A Point Class xPos yPos Class Diagram Point Point - xPos : int
- yPos : int + Point(initX : int, initY: int) + getX( ) : int + getY( ) : int + setPostion(X : int, Y: int) Class Diagram Point setPostion(x, y) getX() yPos xPos Object Diagram getY() Class Diagram MyDate.java

12 Declare pt as an Array of Point Object
Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type Point[ ] pt; pt = new Point[10]; for (int i=0; i<pt.length; i++) { 4 pt[i] = (Point)('a'+i); } After Line 1 pt XXX YYY Memory Address null YYY Declare pt as an Array of Point Object

13 Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type
Point[ ] pt; pt = new Point[10]; for (int i=0; i<pt.length; i++) { 4 pt[i] = new Point(i, i+1); } aaa Memory Address XXX pt Element Index Length=10 [0] [1] [2] YYY bbb zzz ccc [9] Executing Line 2 null Declare pt as an Array of Character aaa Memory Address XXX pt Element Index Length=10 [0] [1] [2] YYY bbb zzz ccc [9] After Line 2 null Declare pt as an Array of Character

14 Creating Array in Java ตัวอย่างการสร้าง Array ของ Primitive Data Type
Point[ ] pt; pt = new Point[10]; for (int i=0; i<pt.length; i++) { 4 pt[i] = new Point(i, i+1); } aaa Memory Address XXX pt Element Index Length = 10 [0] [1] [2] (1,2) bbb zzz ccc [9] After Line 5 null Declare pt as an Array of Character YYY (9,10) (2,3) (0,1) 1 X Y Point aaa Memory Address XXX pt Element Index Length = 10 [0] [1] [2] (1,2) bbb zzz ccc [9] After Line 5 null Declare pt as an Array of Character YYY (9,10) (2,3) (0,1)

15 A Line class ตัวอย่างการสร้าง Array ของคลาส Line Line
- startPt : Point - endPt : Point + Line(start :Point, start : Point) + getStartPoint ( ) : Point + getEndPoint( ) : Point + setStartPoint (pt :Point) + setEndPoint (pt :Point) Class Diagram Line[ ] line; line = new Line[3]; for (int i=0; i<line.length; i++) { Point pt1 = new Point(i); Point pt2 = new Point(i+1); 6 line[i] = new Line(pt1,pt2); } MyDate.java

16 Array Resizing in Java ไม่สามารถ resize Array ได้
ในภาษาจาวา ไม่สามารถ resize Array ได้ แต่สามารถตัวแปรอ้างอิงเดิมเก็บค่าอ้างอิงไปยัง Array ใหม่ได้ ตัวอย่าง int myArray [ ] = new int[4]; myArray = new int[6]; jjj XXX myArray null aaa bbb ddd ccc [0] [1] [2] [3] After Line 2 kkk nnn mmm ooo ppp [4] [5] int myArray [ ] = new int[4]; myArray = new int[6]; aaa XXX myArray null bbb ddd ccc [0] [1] [2] [3] After Line 1 int myArray [ ] = new int[4]; myArray = new int[6]; aaa XXX myArray null bbb ddd ccc [0] [1] [2] [3] Executing Line 2 jjj kkk nnn mmm ooo ppp [4] [5]

17 Copying Array in Java เรียกใช้เมทธอด System.arrraycopy( ); ตัวอย่าง
ในภาษาจาวา ทำได้โดย เรียกใช้เมทธอด System.arrraycopy( ); ตัวอย่าง Origin Target int elements [ ] = { 1,2,3,4 }; // original array int hold [ ] = { 10,9,8,7,6,5 }; // new larger array System.arraycopy(elements, 0, hold, 0, elements.length); Length of copy aaa XXX elements [0] [1] [2] 2 bbb ddd ccc [3] After Line 2 4 3 1 jjj hold 9 kkk nnn mmm 8 10 7 6 5 ooo ppp [4] [5]

18 Copying Array in Java ตัวอย่าง 2 4 3 1 6 5 2 4 3 1 9 8 10 7 6 5
int elements [ ] = { 1,2,3,4 }; // original array int hold [ ] = { 10,9,8,7,6,5 }; // new larger array System.arraycopy(elements, 0, hold, 0, elements.length); aaa XXX elements [0] [1] [2] 2 bbb ddd ccc [3] After Line 3 4 3 1 jjj hold kkk nnn mmm 6 5 ooo ppp [4] [5] aaa XXX elements [0] [1] [2] 2 bbb ddd ccc [3] Executing Line 3 4 3 1 jjj hold 9 kkk nnn mmm 8 10 7 6 5 ooo ppp [4] [5]

19 Multidimensional Array in Java
int[][] twoDim; twoDim [ 0] = new int[2]; // row#0, 2 cols twoDim [ 1] = new int[4]; // row#1, 4 cols twoDim [ 2] = new int[6]; // row#2, 6 cols twoDim [ 3] = new int[8]; // row#3, 8 cols int elements [ ][ ] = new int[4][5]; // 4 rows, 5 cols each

20 Initializing Multidimensional Array
int[ ][ ] array_2d = { { 2, 4, 6, 8, 10 }, { 0, 1}, {20, 21, 22} }; long elements[ ][ ]; elements = new long[2][3]; for (int i=0; i<elements.length; i++) for (int j=0; j<elements[i].length; j++) elements[i][j] = 0L;

21 Java String

22 Java String สายอักษร (String) ในภาษาจาวา ไม่ใช่เป็นเพียงเนื้อที่ในหน่วยความจำที่จองไว้สำหรับประเภทข้อมูล แต่เป็นวัตถุ (Object) ตัวแปร String ในภาษาจาวา เก็บค่าอ้างอิงของ String Object เมื่อมีการอ้างอิงค่าไปยัง String Object แล้ว จะไม่สามารถเปลี่ยนแปลงค่าใน String Object ได้โดยตรง แต่สามารถให้ค่าอ้างอิงใหม่ได้ String message = new String("Hello"); หรือ String message = "Hello";

23 String Declaration (1) การประกาศตัวแปร String ในภาษาจาวา
String empty = new String(""); String message = "Hello"; String repeat = message; "" xxx yyy zzz aaa bbb String empty stored at xxx stored at aaa After Line 1 Conceptual View Memory Address View Programming is about solving problems. Compare this to a program for a concert, for example. The program contains a list of what is to happen, in the order in which it will occur. Give an example of a small recipe and point out the data and the processing (ingredients and method). Point out the data and processing in instructions to change a car tyre. A knitting pattern specifies how many balls of wool of what thickness you need, and what size knitting needles. I wonder how many students know how to knit these days :-). There may not be many students who have filled in a tax form yet, either.

24 String Declaration (2) การประกาศตัวแปร String ในภาษาจาวา
String empty = new String(""); String message = "Hello"; String repeat = message; " Hello" message stored at yyy bbb String ”Hello" stored at bbb "" xxx yyy zzz aaa empty stored at xxx stored at aaa After Line 2 Conceptual View Memory Address View "" xxx yyy zzz aaa bbb String empty stored at xxx stored at aaa After Line 1 Conceptual View Memory Address View Programming is about solving problems. Compare this to a program for a concert, for example. The program contains a list of what is to happen, in the order in which it will occur. Give an example of a small recipe and point out the data and the processing (ingredients and method). Point out the data and processing in instructions to change a car tyre. A knitting pattern specifies how many balls of wool of what thickness you need, and what size knitting needles. I wonder how many students know how to knit these days :-). There may not be many students who have filled in a tax form yet, either.

25 String Declaration (3) การประกาศตัวแปร String ในภาษาจาวา
String empty = new String(""); String message = "Hello"; String repeat = message; Repeat stored at zzz " Hello" message stored at yyy bbb String ”Hello" stored at bbb "" xxx yyy zzz aaa empty stored at xxx stored at aaa After Line 3 Conceptual View Memory Address View " Hello" message stored at yyy bbb String ”Hello" stored at bbb "" xxx yyy zzz aaa empty stored at xxx stored at aaa After Line 2 Conceptual View Memory Address View Programming is about solving problems. Compare this to a program for a concert, for example. The program contains a list of what is to happen, in the order in which it will occur. Give an example of a small recipe and point out the data and the processing (ingredients and method). Point out the data and processing in instructions to change a car tyre. A knitting pattern specifies how many balls of wool of what thickness you need, and what size knitting needles. I wonder how many students know how to knit these days :-). There may not be many students who have filled in a tax form yet, either.

26 The “String” Class String Class ค่าใน String Object ไม่สามารถเปลี่ยนแปลงได้ แต่สามารถให้ค่าอ้างอิงจากตัวแปร String ใหม่ ได้ Methods ของ String Class Create New String concat, replace, subString, toLowerCase, toUpperCase Search endswith, startswith, indexOf, lastIndexOf Comparison equals, equalsIgnoreCase, CompareTo others charAt, length

27 String Comparison การเปรียบเทียบ String ในภาษาจาวา
เปรียบเทียบค่าใน String Object ว่าเท่ากันหรือไม่ ใช้เมทธอด boolean equals(String s) เปรียบเทียบว่าตัวแปร String อ้างอิงถึง String Object เดียวกันหรือไม่ ใช้โอเปอร์เรเตอร์ (Operator) “==” เปรียบเทียบค่าใน String Object เรียงตามลำดับตัวอักษร ใช้เมทธอด int compareTo(String s) return ค่า 0 เมื่อเป็นค่าเดียวกัน, ค่าจำนวนเต็มบวกเมื่อ String Object นี้มากกว่า s และ ค่าจำนวนเต็มลบ เมื่อ String Object นี้น้อยกว่า s

28 Comparing String Contents
ตัวอย่าง String greeting = new String("Hello" ); String message = "Hello"; if (greeting.equals(message)) { System.out.println("equal content!"); } else { System.out.println("content NOT equal!"); } "Hello" message stored at yyy bbb String stored at bbb xxx yyy zzz aaa greeting stored at xxx stored at aaa Conceptual View Memory Address View

29 Comparing String Reference
ตัวอย่าง String greeting = new String("Hello" ); String message = "Hello"; if (greeting == message) { System.out.println("equal reference!"); } else { System.out.println(”reference NOT equal!"); } "Hello" message stored at yyy bbb String stored at bbb xxx yyy zzz aaa greeting stored at xxx stored at aaa Conceptual View Memory Address View

30 Comparing String Lexicographical Order
int compareTo(String s) return ค่า 0 เมื่อเป็นค่าเดียวกัน return ค่าจำนวนเต็มบวกเมื่อ String Object นี้มากกว่า s return ค่าจำนวนเต็มลบ เมื่อ String Object นี้น้อยกว่า s String greeting = new String("Hello" ); String message = ”World"; System.out.println(greeting.compareTo(message));

31 String Concatenation การนำ String มาเชื่อมต่อกัน
ใช้โอเปอร์เรเตอร์ Concatenate (+) แต่ไม่สามารถเปรียบเทียบ String โดยใช้โอเปอร์เรเตอร์แบบ Relational (>, <, >=, <=) และโอเปอร์เรเตอร์แบบ Equality ( ==, !=) ได้ String greetings = new String("Hello”); int ThisYear = 2001; String name = " World " ; String message = greetings + name; หมายเหตุ ใช้โอเปอร์เตอร์ (+) กับ String ได้เมื่อมีพจน์ใดพจน์หนึ่งเป็น String

32 Summary รู้จัก Java Array รู้จัก Java String


ดาวน์โหลด ppt Java Array And String โดย อ. นัฐพงศ์ ส่งเนียม http://www.siam2dev.com xnattapong@homtail.com nattapong@siam2dev.com.

งานนำเสนอที่คล้ายกัน


Ads by Google