SlideShare une entreprise Scribd logo
1  sur  9
Télécharger pour lire hors ligne
ตัวแปรสตริง
String
วัตถุประสงค
♦ เพื่อใหมีความรูความเขาใจในการทํางานของคลาส String
♦ เพื่อใหมีความรูความเขาใจในการทํางานของคลาส StringBuffer
♦ เพื่อใหมีความเขาใจในการนําคลาสที่มีอยูในจาวามาประยุกต
♦ เพื่อสรางความเขาใจในหลักการของการเขียนโปรแกรมเชิงวัตถุประยุกตมากยิ่งขึ้น
บทที่
10
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
236
เนื้อหาบทเรียน
♦ Class String
♦ Method charAt
♦ Method length
♦ Method toUpperCase
♦ Method compareTo
♦ Method equals
♦ Method substring
♦ Method Concat
♦ Class StringBuffer
♦ Method append
♦ Method insert
♦ Method reverse
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
237
ตัวแปรประเภท String
เปนตัวแปรที่ทําหนาที่เก็บกลุมของตัวอักษร คาที่จะกําหนดใหกับตัวแปรประเภทนี้จะอยูใน
ภายในเครื่องหมายคําพูด “ ” ภาษาจาวาไดเตรียมคลาสสําหรับจัดการกับตัวแปรชนิดนี้ดังในคูมือ
โปรแกรม ในที่นี้จะอธิบายเพียงบาง method เทานั้น เพื่อเปนพื้นฐานใหผูเรียนสามารถศึกษา method
อื่นๆ เพิ่มเติมไดจาก คูมือโปรแกรมดังกลาวแลว
การสราง Object ของ Class String
รูปแบบที่ 1
String name1 = new String (“Pooh”);
String name2;
name2 = new String (“Minnie”);
รูปแบบที่ 2 * ใชไดเฉพาะ class String เทานั้น
String name1 = “Pooh”;
String name2;
name2 = “Minnie”;
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
238
H E L L O !
0 1 2 3 4 5
การกําหนดคาเริ่มตนใหกับ คลาส String
String a = new String(“Hello”);
String b = “Hello”;
String c = new String();
c = "abcdef";
char d[ ] = {‘H’, ‘e’, ‘l’ , ‘l’, ‘o’};
char e= ‘A’;
การกําหนดคาใหกับตัวแปรชนิด character ไมใชตัวแปรชนิด String หรือแมแตตัวแปรอารเรย
ของ character ก็ไมใชตัวแปรชนิด String
เมธอด charAt
เปนการอางถึงตัวอักขระ ณ ตําแหนงใดในString
charAt(ตําแหนง)
ทําการอางถึงแตละอักขระ ณ ตําแหนงที่ตองการใน String โดยการเรียกใชงาน method charAt(
ตําแหนง) โดยตําแหนงเริ่มตนของอักขระในตัวแปร String คือตําแหนงที่ 0
ตัวอยางการใชงาน
String x = "airplane";
System.out.println( x.charAt(2) ); // output is 'r'
เมธอด length
เปนเมธอดที่ใชในการหาความยาวของ String โดย method นี้จะสงคากลับเปนจํานวนเต็มที่
แสดงความยาวของ String
String name = “HELLO!”;
แสดงการอางถึงตําแหนงในตัวแปร String
name
name.charAt(3)
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
239
ตัวอยางการใชงาน
String x = "01234567";
System.out.println( x.length() ); // returns "8"
เมธอด toUpperCase
เปนเมธอดที่ทําการแปลงขอมูลอักขระจากตัวพิมพเล็กเปนตัวพิมพใหญทุกตัว โดย method นี้จะ
สงคากลับเปน String
ตัวอยางการใชงาน
String x = "A New Moon";
System.out.println( x.toUpperCase() ); // output is “A NEW MOON"
เมธอด compareTo
เมธอดที่ทําการเปรียบเทียบคาของ String 2 ตัววาเทากันหรือไมได โดยการเรียกใชงาน method
ตัวอยางการเรียกใชงาน
str1.compareTo( str2 )
โดย method นี้จะสงคากลับเปน 0 ถา str1 และ str2 เทากัน
คาติดลบ ถา str1 มีคานอยกวา str2
คาบวก ถา str1 มีคามากกวา str2
เมธอด equals
เมธอดที่ทําการเปรียบเทียบคาของ String 2 ตัววาเทากันหรือไมได
ตัวอยางการเรียกใชงาน
String str1 = “Kapook”;
String str2 = “Sanook”;
boolean ans ;
ans = str1.equals( str2 ) // ans = false
โดย method นี้จะสงคากลับเปนจริง เมื่อ str1 และ str2 เทากัน และสงคากลับเปน false ถา
str1 และ str2 ไมเทากัน
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
240
เมธอด substring
เมธอดนี้ทําการตัดขอความบางสวนของ String และ สงคากลับเปน String
String substring( ตําแหนงเริ่มตน,ตําแหนงสุดทาย)
ตัวอยางการใชงาน
String name1 = "HELLO-JAVA";
String name2 = name1.substring(3,6) // name2 = LO-J
เมธอด concat
เมธอดที่นําขอความมาตอกัน
String concat(String s);
ตัวอยางการใชงาน
String x = "taxi";
System.out.println( x.concat(" cab") ); // output คือ "taxi cab”
System.out.println(x.toString());// output คือ “taxi”
ในจาวาไดทําการ overloaded + และ += ซึ่งมีหลักการทํางานเหมือนกับเมธอด concat()
ตัวอยางการใชงาน
String x = "Atlantic";
x += " ocean"
System.out.println( x ); // output คือ "Atlantic ocean"
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
241
คลาส StringBuffer
เปนอีกคลาสหนึ่งที่ใชทํางานกับ String แตมีความยืดหยุนและใชงานไดหลากหลายกวา String
class ทั้งนี้ คลาส StringBuffer มี constructor ใหเลือกใชได 3 รูปแบบ ไดแก
- StringBuffer() ใชในการสราง StringBuffer ที่ไมมีขอมูลใดๆ และมีความยาวสูงสุด 16
ตัวอักษร
- StringBuffer(int length) ใชในการสราง StringBuffer ที่ไมมีขอมูลใดๆ แตความยาวจะขึ้นอยู
กับคาของ length ที่สงมาให
- StringBuffer(String str) ใชสราง StringBuffer ที่มีขอมูลตาม Argument “str” ที่สงมา โดย
ความยาวก็จะขึ้นอยูกับความยาวของ str เชนกัน
ตัวอยาง method ที่ใชในคลาส StringBuffer เชน append หรือ insert
เมธอด append
เปนเมธอดที่ทําการเพิ่มอักขระเขาไปตอทาย Stringได
public synchronized StringBuffer append(String s)
ตัวอยางการใช
StringBuffer sb = new StringBuffer("abc");
sb.append("def");
System.out.println("sb = " + sb); // output is "sb = abcdef"
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
242
เปรียบเทียบกับ คลาส String
String x = "abc";
x.concat("def");
System.out.println("x = " + x); // output คือ "x = abc“
String x = "abc";
x = x.concat("def");
System.out.println("x = " + x); // output คือ "x = abcdef"
เมธอด insert
เปนเมธอดที่ทําการแทรกอักขระเขาไปใน Stringไดโดยการเรียกใช
public synchronized StringBuffer insert(int offset, String s)
ตัวอยางการเรียกใชงาน
StringBuffer sb = new StringBuffer("01234567");
sb.insert(4, "---");
System.out.println( sb ); // output is "0123---4567"
เมธอด reverse
เมธอดที่ทําการกลับตัวอักษร
Public synchronized StringBuffer reverse()
ตัวอยางการเรียกใชงาน
StringBuffer sb = new StringBuffer("Java is fun");
sb.reverse();
System.out.println( sb ); // output คือ nuf si avaJ
บทที่ 10 ตัวแปรสตริง หนาที่
เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง
อ.สุรางคนา ระวังยศ
243
แบบฝกหัด
1. ใหสราง method ทําการรับขอความ และ ตัวอักษรโดยกําหนดให prototype ของโปรแกรมคือ
void printStr(String str,char ch)
เรียกใชงาน printStr(“Hello” , ‘*’);
ผลลัพธ
* H *
* E*
* L *
* L *
* O *
2. ใหทําการสราง method ที่ทําการกลับคาขอความที่รับเขามาแลวสงคากลับไปยังเมธอดที่เรียกใชงาน
String reverse(String str)
ตัวอยางการเรียกใชงาน String ans = reverse(“Sawusdee”);
System.out.println(ans);
ผลลัพธ
eedsuwaS

Contenu connexe

En vedette

En vedette (9)

Children of light
Children of lightChildren of light
Children of light
 
Javacentrix com chap10-0
Javacentrix com chap10-0Javacentrix com chap10-0
Javacentrix com chap10-0
 
Reasoning
ReasoningReasoning
Reasoning
 
Australia
AustraliaAustralia
Australia
 
บทที่ 12 กราฟฟิก
บทที่ 12 กราฟฟิกบทที่ 12 กราฟฟิก
บทที่ 12 กราฟฟิก
 
National geographic
National geographicNational geographic
National geographic
 
1 accepte mes fleurs !
1 accepte mes fleurs !1 accepte mes fleurs !
1 accepte mes fleurs !
 
Accounting vouchesrs in Tally
Accounting vouchesrs in TallyAccounting vouchesrs in Tally
Accounting vouchesrs in Tally
 
budget and control
budget and controlbudget and control
budget and control
 

Similaire à บทที่ 10 ตัวแปรสตริ

บทที่ 6 อาร์เรย์
บทที่ 6 อาร์เรย์บทที่ 6 อาร์เรย์
บทที่ 6 อาร์เรย์Theeravaj Tum
 
Java-Chapter 05 String Operations
Java-Chapter 05 String OperationsJava-Chapter 05 String Operations
Java-Chapter 05 String OperationsWongyos Keardsri
 
Java Programming: โครงสร้างควบคุม
Java Programming: โครงสร้างควบคุมJava Programming: โครงสร้างควบคุม
Java Programming: โครงสร้างควบคุมThanachart Numnonda
 
บทที่ 2 ชนิดของตัว
บทที่ 2 ชนิดของตัวบทที่ 2 ชนิดของตัว
บทที่ 2 ชนิดของตัวTheeravaj Tum
 
การเขียนฟังก์ชั่นในภาษา C
การเขียนฟังก์ชั่นในภาษา Cการเขียนฟังก์ชั่นในภาษา C
การเขียนฟังก์ชั่นในภาษา CWarawut
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นFinian Nian
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นFinian Nian
 
C Programming
C ProgrammingC Programming
C ProgrammingWarawut
 
บทที่ 9 การพ้องรูป
บทที่ 9 การพ้องรูปบทที่ 9 การพ้องรูป
บทที่ 9 การพ้องรูปTheeravaj Tum
 
Java Programming [12/12] : Thread
Java Programming [12/12] : ThreadJava Programming [12/12] : Thread
Java Programming [12/12] : ThreadIMC Institute
 
กลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือก
กลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือกกลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือก
กลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือกNaphamas
 
บทที่ 5 คลาส
บทที่ 5 คลาสบทที่ 5 คลาส
บทที่ 5 คลาสTheeravaj Tum
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา JavaItslvle Parin
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา JavaItslvle Parin
 

Similaire à บทที่ 10 ตัวแปรสตริ (20)

02 basic
02 basic02 basic
02 basic
 
บทที่ 6 อาร์เรย์
บทที่ 6 อาร์เรย์บทที่ 6 อาร์เรย์
บทที่ 6 อาร์เรย์
 
Java-Chapter 05 String Operations
Java-Chapter 05 String OperationsJava-Chapter 05 String Operations
Java-Chapter 05 String Operations
 
C lang
C langC lang
C lang
 
Java Programming: โครงสร้างควบคุม
Java Programming: โครงสร้างควบคุมJava Programming: โครงสร้างควบคุม
Java Programming: โครงสร้างควบคุม
 
03 input math
03 input math03 input math
03 input math
 
บทที่ 2 ชนิดของตัว
บทที่ 2 ชนิดของตัวบทที่ 2 ชนิดของตัว
บทที่ 2 ชนิดของตัว
 
การเขียนฟังก์ชั่นในภาษา C
การเขียนฟังก์ชั่นในภาษา Cการเขียนฟังก์ชั่นในภาษา C
การเขียนฟังก์ชั่นในภาษา C
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
C Programming
C ProgrammingC Programming
C Programming
 
Array
ArrayArray
Array
 
บทที่ 9 การพ้องรูป
บทที่ 9 การพ้องรูปบทที่ 9 การพ้องรูป
บทที่ 9 การพ้องรูป
 
Lab Computer Programming 1
Lab Computer Programming 1Lab Computer Programming 1
Lab Computer Programming 1
 
Java Programming [12/12] : Thread
Java Programming [12/12] : ThreadJava Programming [12/12] : Thread
Java Programming [12/12] : Thread
 
Know1 3
Know1 3Know1 3
Know1 3
 
กลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือก
กลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือกกลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือก
กลุ่ม3การเขียนคำสั่งควบคุมแบบมีทางเลือก
 
บทที่ 5 คลาส
บทที่ 5 คลาสบทที่ 5 คลาส
บทที่ 5 คลาส
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
 

Plus de Theeravaj Tum

Javacentrix com chap11-2
Javacentrix com chap11-2Javacentrix com chap11-2
Javacentrix com chap11-2Theeravaj Tum
 
Javacentrix com chap11-1
Javacentrix com chap11-1Javacentrix com chap11-1
Javacentrix com chap11-1Theeravaj Tum
 
Javacentrix com chap09-0
Javacentrix com chap09-0Javacentrix com chap09-0
Javacentrix com chap09-0Theeravaj Tum
 
Javacentrix com chap08-0
Javacentrix com chap08-0Javacentrix com chap08-0
Javacentrix com chap08-0Theeravaj Tum
 
Javacentrix com chap07-0
Javacentrix com chap07-0Javacentrix com chap07-0
Javacentrix com chap07-0Theeravaj Tum
 
Javacentrix com chap04-0
Javacentrix com chap04-0Javacentrix com chap04-0
Javacentrix com chap04-0Theeravaj Tum
 
Javacentrix com chap03-0
Javacentrix com chap03-0Javacentrix com chap03-0
Javacentrix com chap03-0Theeravaj Tum
 
Javacentrix com chap02-0
Javacentrix com chap02-0Javacentrix com chap02-0
Javacentrix com chap02-0Theeravaj Tum
 
Javacentrix com chap01-0
Javacentrix com chap01-0Javacentrix com chap01-0
Javacentrix com chap01-0Theeravaj Tum
 
Javacentrix com chap05-0
Javacentrix com chap05-0Javacentrix com chap05-0
Javacentrix com chap05-0Theeravaj Tum
 
บทที่ 13 การดักจับเ
บทที่ 13 การดักจับเบทที่ 13 การดักจับเ
บทที่ 13 การดักจับเTheeravaj Tum
 
บทที่ 11 การดักจับข
บทที่ 11 การดักจับขบทที่ 11 การดักจับข
บทที่ 11 การดักจับขTheeravaj Tum
 
บทที่ 7 แพ็คเกจ
บทที่ 7 แพ็คเกจบทที่ 7 แพ็คเกจ
บทที่ 7 แพ็คเกจTheeravaj Tum
 

Plus de Theeravaj Tum (13)

Javacentrix com chap11-2
Javacentrix com chap11-2Javacentrix com chap11-2
Javacentrix com chap11-2
 
Javacentrix com chap11-1
Javacentrix com chap11-1Javacentrix com chap11-1
Javacentrix com chap11-1
 
Javacentrix com chap09-0
Javacentrix com chap09-0Javacentrix com chap09-0
Javacentrix com chap09-0
 
Javacentrix com chap08-0
Javacentrix com chap08-0Javacentrix com chap08-0
Javacentrix com chap08-0
 
Javacentrix com chap07-0
Javacentrix com chap07-0Javacentrix com chap07-0
Javacentrix com chap07-0
 
Javacentrix com chap04-0
Javacentrix com chap04-0Javacentrix com chap04-0
Javacentrix com chap04-0
 
Javacentrix com chap03-0
Javacentrix com chap03-0Javacentrix com chap03-0
Javacentrix com chap03-0
 
Javacentrix com chap02-0
Javacentrix com chap02-0Javacentrix com chap02-0
Javacentrix com chap02-0
 
Javacentrix com chap01-0
Javacentrix com chap01-0Javacentrix com chap01-0
Javacentrix com chap01-0
 
Javacentrix com chap05-0
Javacentrix com chap05-0Javacentrix com chap05-0
Javacentrix com chap05-0
 
บทที่ 13 การดักจับเ
บทที่ 13 การดักจับเบทที่ 13 การดักจับเ
บทที่ 13 การดักจับเ
 
บทที่ 11 การดักจับข
บทที่ 11 การดักจับขบทที่ 11 การดักจับข
บทที่ 11 การดักจับข
 
บทที่ 7 แพ็คเกจ
บทที่ 7 แพ็คเกจบทที่ 7 แพ็คเกจ
บทที่ 7 แพ็คเกจ
 

บทที่ 10 ตัวแปรสตริ

  • 1. ตัวแปรสตริง String วัตถุประสงค ♦ เพื่อใหมีความรูความเขาใจในการทํางานของคลาส String ♦ เพื่อใหมีความรูความเขาใจในการทํางานของคลาส StringBuffer ♦ เพื่อใหมีความเขาใจในการนําคลาสที่มีอยูในจาวามาประยุกต ♦ เพื่อสรางความเขาใจในหลักการของการเขียนโปรแกรมเชิงวัตถุประยุกตมากยิ่งขึ้น บทที่ 10
  • 2. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 236 เนื้อหาบทเรียน ♦ Class String ♦ Method charAt ♦ Method length ♦ Method toUpperCase ♦ Method compareTo ♦ Method equals ♦ Method substring ♦ Method Concat ♦ Class StringBuffer ♦ Method append ♦ Method insert ♦ Method reverse
  • 3. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 237 ตัวแปรประเภท String เปนตัวแปรที่ทําหนาที่เก็บกลุมของตัวอักษร คาที่จะกําหนดใหกับตัวแปรประเภทนี้จะอยูใน ภายในเครื่องหมายคําพูด “ ” ภาษาจาวาไดเตรียมคลาสสําหรับจัดการกับตัวแปรชนิดนี้ดังในคูมือ โปรแกรม ในที่นี้จะอธิบายเพียงบาง method เทานั้น เพื่อเปนพื้นฐานใหผูเรียนสามารถศึกษา method อื่นๆ เพิ่มเติมไดจาก คูมือโปรแกรมดังกลาวแลว การสราง Object ของ Class String รูปแบบที่ 1 String name1 = new String (“Pooh”); String name2; name2 = new String (“Minnie”); รูปแบบที่ 2 * ใชไดเฉพาะ class String เทานั้น String name1 = “Pooh”; String name2; name2 = “Minnie”;
  • 4. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 238 H E L L O ! 0 1 2 3 4 5 การกําหนดคาเริ่มตนใหกับ คลาส String String a = new String(“Hello”); String b = “Hello”; String c = new String(); c = "abcdef"; char d[ ] = {‘H’, ‘e’, ‘l’ , ‘l’, ‘o’}; char e= ‘A’; การกําหนดคาใหกับตัวแปรชนิด character ไมใชตัวแปรชนิด String หรือแมแตตัวแปรอารเรย ของ character ก็ไมใชตัวแปรชนิด String เมธอด charAt เปนการอางถึงตัวอักขระ ณ ตําแหนงใดในString charAt(ตําแหนง) ทําการอางถึงแตละอักขระ ณ ตําแหนงที่ตองการใน String โดยการเรียกใชงาน method charAt( ตําแหนง) โดยตําแหนงเริ่มตนของอักขระในตัวแปร String คือตําแหนงที่ 0 ตัวอยางการใชงาน String x = "airplane"; System.out.println( x.charAt(2) ); // output is 'r' เมธอด length เปนเมธอดที่ใชในการหาความยาวของ String โดย method นี้จะสงคากลับเปนจํานวนเต็มที่ แสดงความยาวของ String String name = “HELLO!”; แสดงการอางถึงตําแหนงในตัวแปร String name name.charAt(3)
  • 5. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 239 ตัวอยางการใชงาน String x = "01234567"; System.out.println( x.length() ); // returns "8" เมธอด toUpperCase เปนเมธอดที่ทําการแปลงขอมูลอักขระจากตัวพิมพเล็กเปนตัวพิมพใหญทุกตัว โดย method นี้จะ สงคากลับเปน String ตัวอยางการใชงาน String x = "A New Moon"; System.out.println( x.toUpperCase() ); // output is “A NEW MOON" เมธอด compareTo เมธอดที่ทําการเปรียบเทียบคาของ String 2 ตัววาเทากันหรือไมได โดยการเรียกใชงาน method ตัวอยางการเรียกใชงาน str1.compareTo( str2 ) โดย method นี้จะสงคากลับเปน 0 ถา str1 และ str2 เทากัน คาติดลบ ถา str1 มีคานอยกวา str2 คาบวก ถา str1 มีคามากกวา str2 เมธอด equals เมธอดที่ทําการเปรียบเทียบคาของ String 2 ตัววาเทากันหรือไมได ตัวอยางการเรียกใชงาน String str1 = “Kapook”; String str2 = “Sanook”; boolean ans ; ans = str1.equals( str2 ) // ans = false โดย method นี้จะสงคากลับเปนจริง เมื่อ str1 และ str2 เทากัน และสงคากลับเปน false ถา str1 และ str2 ไมเทากัน
  • 6. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 240 เมธอด substring เมธอดนี้ทําการตัดขอความบางสวนของ String และ สงคากลับเปน String String substring( ตําแหนงเริ่มตน,ตําแหนงสุดทาย) ตัวอยางการใชงาน String name1 = "HELLO-JAVA"; String name2 = name1.substring(3,6) // name2 = LO-J เมธอด concat เมธอดที่นําขอความมาตอกัน String concat(String s); ตัวอยางการใชงาน String x = "taxi"; System.out.println( x.concat(" cab") ); // output คือ "taxi cab” System.out.println(x.toString());// output คือ “taxi” ในจาวาไดทําการ overloaded + และ += ซึ่งมีหลักการทํางานเหมือนกับเมธอด concat() ตัวอยางการใชงาน String x = "Atlantic"; x += " ocean" System.out.println( x ); // output คือ "Atlantic ocean"
  • 7. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 241 คลาส StringBuffer เปนอีกคลาสหนึ่งที่ใชทํางานกับ String แตมีความยืดหยุนและใชงานไดหลากหลายกวา String class ทั้งนี้ คลาส StringBuffer มี constructor ใหเลือกใชได 3 รูปแบบ ไดแก - StringBuffer() ใชในการสราง StringBuffer ที่ไมมีขอมูลใดๆ และมีความยาวสูงสุด 16 ตัวอักษร - StringBuffer(int length) ใชในการสราง StringBuffer ที่ไมมีขอมูลใดๆ แตความยาวจะขึ้นอยู กับคาของ length ที่สงมาให - StringBuffer(String str) ใชสราง StringBuffer ที่มีขอมูลตาม Argument “str” ที่สงมา โดย ความยาวก็จะขึ้นอยูกับความยาวของ str เชนกัน ตัวอยาง method ที่ใชในคลาส StringBuffer เชน append หรือ insert เมธอด append เปนเมธอดที่ทําการเพิ่มอักขระเขาไปตอทาย Stringได public synchronized StringBuffer append(String s) ตัวอยางการใช StringBuffer sb = new StringBuffer("abc"); sb.append("def"); System.out.println("sb = " + sb); // output is "sb = abcdef"
  • 8. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 242 เปรียบเทียบกับ คลาส String String x = "abc"; x.concat("def"); System.out.println("x = " + x); // output คือ "x = abc“ String x = "abc"; x = x.concat("def"); System.out.println("x = " + x); // output คือ "x = abcdef" เมธอด insert เปนเมธอดที่ทําการแทรกอักขระเขาไปใน Stringไดโดยการเรียกใช public synchronized StringBuffer insert(int offset, String s) ตัวอยางการเรียกใชงาน StringBuffer sb = new StringBuffer("01234567"); sb.insert(4, "---"); System.out.println( sb ); // output is "0123---4567" เมธอด reverse เมธอดที่ทําการกลับตัวอักษร Public synchronized StringBuffer reverse() ตัวอยางการเรียกใชงาน StringBuffer sb = new StringBuffer("Java is fun"); sb.reverse(); System.out.println( sb ); // output คือ nuf si avaJ
  • 9. บทที่ 10 ตัวแปรสตริง หนาที่ เอกสารประกอบการสอน 305272 การเขียนโปรแกรมคอมพิวเตอรขั้นสูง อ.สุรางคนา ระวังยศ 243 แบบฝกหัด 1. ใหสราง method ทําการรับขอความ และ ตัวอักษรโดยกําหนดให prototype ของโปรแกรมคือ void printStr(String str,char ch) เรียกใชงาน printStr(“Hello” , ‘*’); ผลลัพธ * H * * E* * L * * L * * O * 2. ใหทําการสราง method ที่ทําการกลับคาขอความที่รับเขามาแลวสงคากลับไปยังเมธอดที่เรียกใชงาน String reverse(String str) ตัวอยางการเรียกใชงาน String ans = reverse(“Sawusdee”); System.out.println(ans); ผลลัพธ eedsuwaS