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

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

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

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


งานนำเสนอเรื่อง: "Java Array And String โดย อ. นัฐพงศ์ ส่งเนียม m"— ใบสำเนางานนำเสนอ:

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

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

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

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

5 Examples of Declaring Array ตัวอย่าง การประกาศ 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 Creating Array in Java 1 char[ ] c; 2 c = new char[26]; 3 for (int i=0; i<26; i++) { 4c[i] = (char)('a'+i); 5 } YYY Memory Address XXX Declare C as an Array of Character c After Line 1 null YYY ตัวอย่างการสร้าง Array ของ Primitive Data Type

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

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

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

10 Initializing an Array การสร้าง Array โดยให้ค่าเริ่มต้น BankAccount account[ ]; account = new BankAccount[3]; account[0] = new BankAccount(1000); account[1] = new BankAccount(0); account[2] = new BankAccount (23052); Array Bounds int data[ ]; data = new int[5]; for (int i=10; I < data.length; i--) data[i] = i % 2; int a[ ] = { 2, 4, 6, 8, 10 };

11 MyDate.java A Point Class Class Diagram 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()

12 1 Point[ ] pt; 2 pt = new Point[10]; 3 for (int i=0; i

13 1 Point[ ] pt; 2 pt = new Point[10]; 3 for (int i=0; i

14 1 Point[ ] pt; 2 pt = new Point[10]; 3 for (int i=0; i

15 MyDate.java 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 1 Line[ ] line; 2 line = new Line[3]; 3 for (int i=0; i

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

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

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

19 Multidimensional Array in Java Multidimensional Array ในภาษา จาวา  Array ที่มีจำนวนแถว และจำนวน คอลัมน์ ไม่คงที่เท่ากัน  Array ที่มีจำนวนแถว และ จำนวน คอลัมน์ คงที่เท่ากัน int elements [ ][ ] = new int[4][5]; // 4 rows, 5 cols each 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

20 Initializing Multidimensional Array การสร้าง 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

21 Java String

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

23 การประกาศตัวแปร String ใน ภาษาจาวา String Declaration (1) 1 String empty = new String(""); 2 String message = "Hello"; 3 String repeat = message; "" xxx yyy zzz aaa bbb String "" empty stored at xxx stored at aaa After Line 1 aaa String "" stored at aaa Conceptual ViewMemory Address View

24 String Declaration (2) 1 String empty = new String(""); 2 String message = "Hello"; 3 String repeat = message; " Hello" message stored at yyy bbb String ”Hello" stored at bbb "" xxx yyy zzz aaa bbb String "" empty stored at xxx stored at aaa After Line 2 aaa String "" stored at aaa Conceptual View Memory Address View String ”Hello" "" xxx yyy zzz aaa bbb String "" empty stored at xxx stored at aaa After Line 1 aaa String "" stored at aaa Conceptual ViewMemory Address View การประกาศตัวแปร String ในภาษาจาวา

25 String Declaration (3) 1 String empty = new String(""); 2 String message = "Hello"; 3 String repeat = message; Repeat stored at zzz " Hello" message stored at yyy bbb String ”Hello" stored at bbb "" xxx yyy zzz aaa bbb String "" empty stored at xxx stored at aaa After Line 3 aaa String "" stored at aaa Conceptual View Memory Address View String ”Hello" bbb " Hello" message stored at yyy bbb String ”Hello" stored at bbb "" xxx yyy zzz aaa bbb String "" empty stored at xxx stored at aaa After Line 2 aaa String "" stored at aaa Conceptual View Memory Address View String ”Hello" การประกาศตัวแปร String ในภาษาจาวา

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

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 "Hello" stored at bbb "Hello" xxx yyy zzz aaa bbb String "Hello" greeting stored at xxx stored at aaa aaa String "Hello" stored at aaa Conceptual View Memory Address View String "Hello" ตัวอย่าง

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

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

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


ดาวน์โหลด ppt Java Array And String โดย อ. นัฐพงศ์ ส่งเนียม m

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


Ads by Google