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

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

สายอักขระ เขียนโปรแกรม Java เบื้องต้น.

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


งานนำเสนอเรื่อง: "สายอักขระ เขียนโปรแกรม Java เบื้องต้น."— ใบสำเนางานนำเสนอ:

1 สายอักขระ เขียนโปรแกรม Java เบื้องต้น

2 หัวข้อ สายอักขระ คลาส String คลาส StringBuffer

3 สายอักขระ

4 สายอักขระ public class HelloWorld {
public static void main(String[] args) { System.out.println("Hello, World! 2"); }

5 ประโยชน์ของสายอักขระ
บอกผลลัพธ์ของการคำนวณให้เราทราบ รายงานขั้นตอนการทำงานของโปรแกรม เก็บข้อมูลที่เป็นตัวอักษร ตัวเลข สัญลักษณ์

6 คลาส String

7 การใช้งานสตริง ประกาศตัวแปร String name; กำหนดค่า
name = new String("Smith"); แสดงผล System.out.println(name);

8 เรฟเฟอร์เรนซ์ (Reference)
int n n เป็นข้อมูลชนิดจำนวนเต็ม String name ไม่ได้หมายความว่า name เป็นวัตถุ String แต่เป็นการบอกว่า name เป็นเรฟเฟอร์เรนซ์ (reference) หรือตัวที่ใช้อ้างอิงไปที่วัตถุ String

9 วัตถุและเรฟเฟอร์เรนซ์

10 การสั่งงานสตริง รูปแบบ
เรฟเฟอร์เรนซ์.ข้อความ(สิ่งที่ส่งไปพร้อมกับข้อความ) ตัวอย่าง name.length(); name.charAt(1);

11 เมธอดที่น่าสนใจ length() ความยาวของสตริง
charAt() ตัวอักษรในตำแหน่งที่กำหนด ตัวอักษรตัวแรกคือตำแหน่งที่ 0 ตัวอักษรสุดท้ายคือ length() - 1 indexOf() ตำแหน่งของสายอักขระในสตริง substring() สตริงที่อยู่ในช่วงที่กำหนด

12 ตัวอย่างการใช้เมธอด public class StringMessage {
public static void main(String[] args) { String name = "Smith"; System.out.println(name.length()); System.out.println(name.charAt(2)); System.out.println(name.indexOf("t")); System.out.println(name.substring(1, 3)); }

13 การเปรียบเทียบสตริง (แบบผิดๆ)
public class StringCompareInCorrect { public static void main(String[] args) { String name1 = new String(“Smith”); String name2 = new String(“Smith”); System.out.println(name1 == name2); }

14 การเปรียบเทียบสตริง (แบบผิดๆ)

15 การเปรียบเทียบสตริง public class StringCompare {
public static void main(String[] args) { String name1 = new String(“Smith”); String name2 = new String(“Smith”); System.out.println(name1.equals(name2)); }

16 การต่อสตริง เมธอด concat() เครื่องหมาย + เครื่องหมาย +=

17 เมธอด concat() public class StringConcat1 {
public static void main(String[] args) { String name = "Smith"; String lastName = " Brown"; String fullName =name.concat(lastname); System.out.println(fullName); }

18 เครื่องหมาย + public class StringConcat2 {
public static void main(String[] args) { String name = "Smith"; String lastName = " Brown"; String fullName = name + lastName; System.out.println(fullName); }

19 เครื่องหมาย += public class StringAppend {
public static void main(String[] args) { String name = "Smith"; String lastName = " Brown"; name += lastName; System.out.println(name); }

20 ความมั่นคงของสตริง (Immutability)
ไม่สามารถเปลี่ยนแปลงค่าของสายอักขระได้เลยหลังจากที่เราได้สร้างมันขึ้นมา ในบรรดาข้อความ (message) ที่วัตถุ String รู้จักนั้น ไม่มีข้อความใดเลยที่ทำให้สายอักขระเปลี่ยนแปลงได้ length() substring()

21 สตริงไม่เปลี่ยนแปลง String str; str = new String("Smith");
str = new String("John");

22 สตริงไม่เปลี่ยนแปลง String str = "Smith";
System.out.println(str.toUpperCase()); System.out.println(str);

23 สตริงไม่เปลี่ยนแปลง public class StringDeficiency {
public static void main(String[] args) { String str = "A"; for (int i = 0; i < 100; i++) str += "A"; System.out.println(str); }

24 สตริงไม่เปลี่ยนแปลง

25 คลาส StringBuffer

26 ข้อดีของ String Buffer
ประหยัดทั้งหน่วยความจำและเวลาในการประมวลผล วัตถุ String Buffer สามารถเปลี่ยนแปลงค่าในสายอักขระที่มันนำเสนอได้เอง โดยไม่ต้องสร้างวัตถุขึ้นมาใหม่

27 เมธอดที่น่าสนใจ append() การต่อสายอักขระ insert() การแทรกสายอักขระ
delete() การลบสายอักขระย่อย

28 ตัวอย่างการใช้เมธอด StringBuffer sb = new StringBuffer("John");
System.out.println(sb); sb.append(" Hunter"); sb.insert(4, "y"); sb.delete(2, 4);

29 ทดลองเปลี่ยนแปลง String Buffer
public class StringBufferAppend { public static void main(String[] args) { StringBuffer sb; sb = new StringBuffer("A"); for (int i = 0; i < 100; i++) sb.append("A"); System.out.println(sb); }

30 ทดลองเปลี่ยนแปลง String Buffer

31 String Builder มีเมธอดที่เหมือนกับ String Buffer
String Buffer ปลอดภัยสำหรับการทำงานในแบบ multiple threads

32 Java Doc

33 เอกสารอ้างอิง

34 แหล่งเอกสาร http://java.sun.com/j2se/1.5.0/docs/api

35 สรุป

36 สรุป สายอักขระมีไว้เพื่อการแสดงผลข้อความ
สายอักขระได้ถูกนำเสนอด้วยวัตถุ String และ String Buffer เราสามารถใช้งานวัตถุได้โดยผ่านทางเรฟเฟอร์เรนซ์ เรฟเฟอร์เรนซ์เปรียบเสมือนรีโมทคอนโทรล วัตถุเปรียบได้กับสิ่งที่รีโมทนั้นควบคุมอยู่ การส่งข้อความหาวัตถุเปรียบได้กับการกดปุ่มรีโมทคอนโทรล

37 สรุป การเปรียบเทียบสตริงทำได้โดยการส่งข้อความ equals( )
การต่อสตริงนอกจากจะใช้การส่งข้อความ concat() แล้ว ยังสามารถใช้เครื่องหมาย + ได้อีกด้วย สายอักขระของวัตถุ String ไม่สามารถถูกเปลี่ยนแปลงได้ ถ้าต้องการเปลี่ยนแปลงค่าในสายอักขระบ่อยๆ ควรใช้วัตถุ String Buffer

38 แบบฝึกหัดท้ายหน่วยการเรียนรู้ที่ 4
1. สร้างวัตถุ String ขึ้นมาหนึ่งตัว ภายในบรรจุคำว่า "Sawasdee Thailand" แล้วแสดงสายอักขระนั้น 2. แสดงสายอักขระเหมือนในข้อ 1 แต่เปลี่ยนไปใช้วัตถุ String Buffer แทน 3. กำหนดข้อความเป็น ให้เขียนโปรแกรมที่พิมพ์ตำแหน่งของเครื่องหมาย / ทุกตัว

39 แบบฝึกหัดท้ายหน่วยการเรียนรู้ที่ 4
4. สร้างวัตถุ String ขึ้นมา 2 ตัว และให้ทำการเปรียบเทียบด้วยเครื่องหมาย == แล้วให้ผลลัพธ์เป็นจริง 5. สร้างวัตถุ StringBuffer และทดสอบว่าการเปรียบเทียบด้วย เครื่องหมาย == และเมธอด equals() ให้ผลลัพธ์เหมือนหรือต่างกับวัตถุ String อย่างไรบ้าง


ดาวน์โหลด ppt สายอักขระ เขียนโปรแกรม Java เบื้องต้น.

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


Ads by Google