JAVA API (lang.*,util.

*)
Vuttichai Vicheanchai
http://www.it.msu.ac.th/onizuka
email : onizuka.p@gmail.com

1

Java.lang.* คืออะไร

• Java.lang
เป็ นกลุ่มของคลาสพ้ืนฐานในภาษาจาวาท่ส

ร้างขึน
้ มาเพ่ ืออำานวยความสะดวกให้ผู้พัฒน
า ในการพัฒนาโปรแกรมในเร่ ืองของ
Object, Type Wrapper, Integer, String, Math, System
เป็ นต้น
• การใช้งาน Java.lang ไม่จำาเป็ นต้อง Import
เข้ามาในโปรแกรม ภาษาจาวาจะ Import
คลาสกลุ่มนีเ้สมอในการทำางาน
2

Inside Java.lang

• Type Wrapper
เป็ นกลุ่มของคลาสท่ม
ี ีการทำางานเก่ย
ี วพันกั
บชนิดข้อมูลพ้ืนฐานของจาวา เช่น int , string,
double เป็ นต้น
• กลุม
่ ของคลาสในส่วนของ Type Wrapper
ท่ส
ี ำาคัญคือ
• Integer เป็ นคลาสท่ีทำางานเก่ย
ี วกับตัวเลข
Integer
• Character เป็ นคลาสท่ท
ี ำางานเก่ียวกับตัวอักษร
• String เป็ นคลาสท่ีทำางานเก่ย
ี วกับข้อความ

• Math

3

Integer

• คลาส Integer
เป็ นคลาสท่ท
ี ำางานเก่ย
ี วกับตัวเลขต่างๆ
เช่นการแปลงค่าตัวเลข เป็ นต้น
โดยจะเรียกใช้งานผ่านเมดธอดของคลาส
• คลาส Integer
เป็ นคลาสท่ส
ี ามารถเรียกใช้งานได้ทันที
คล้ายกับคลาส System ท่ใี ช้บ่อยๆ
โดยไม่จำาเป็ นต้องสร้าง Object
ของคลาสก่อนเรียกใช้งาน

4

Method of Integer class

Method : parseInt(String s), parseInt(String s,int radix)
Return Type : int
หน้าท่ี : แปลงข้อความให้เป็ นตัวเลข int
พารามิเตอร์ : s
ข้อความท่ต
ี อ
้ งการแปลงเป็ นตัวเลข
radix
ตัวบ่งบอกว่าข้อความท่จี ะแปลงเป็ นตัวเลข
นัน
้ เป็ นเลขฐานอะไร
ตัวอย่าง : int x = Integer.parseInt(“1234”); // x = 1234

5

Method of Integer class

Method : toBinaryString(int i)
Return Type : String
หน้าท่ี : แปลงตัวเลขให้เป็ นเลขฐาน 2
พารามิเตอร์ : i เป็ นตัวเลขท่ต
ี ้องการแปลง
ตัวอย่าง : String str = Integer.toBinaryString(100);
// str = “1100100”

6

Method of Integer class

Method : toHexString(int i)
Return Type : String
หน้าท่ี : แปลงตัวเลขให้เป็ นเลขฐาน 16
พารามิเตอร์ : i เป็ นตัวเลขท่ต
ี ้องการแปลง
ตัวอย่าง : String str = Integer.toHexString(100);
// str = “64”

7

Method of Integer class

Method : toOctalString(int i)
Return Type : String
หน้าท่ี : แปลงตัวเลขให้เป็ นเลขฐาน 8
พารามิเตอร์ : i เป็ นตัวเลขท่ต
ี ้องการแปลง
ตัวอย่าง : String str = Integer.toOctalString(100);
// str = “144”

8

Method of Integer class

Method : toString(int i)
Return Type : String
หน้าท่ี : แปลงตัวเลขให้เป็ นข้อความ
พารามิเตอร์ : i เป็ นตัวเลขท่ต
ี ้องการแปลง
ตัวอย่าง : String str = Integer.toString(100);
// str = “100”

9

Practice

• Method อ่ ืนๆ ให้ศึกษาจาก Java Document
• ทดลองเรียกใช้เมดธอดท่ีมีใน Slide แล้วดูผล
พร้อมทัง้ศึกษาให้เข้าใจ
• ทดลองเรียกใช้เมดธอดท่ีไม่มีใน Slide
แล้วดูผล พร้อมทัง้ศึกษาให้เข้าใจ

10

Character

• คลาส Character
เป็ นคลาสท่ท
ี ำางานเก่ย
ี วกับตัวอักษรต่างๆ
เช่นการตรวจสอบตัวอักษร เป็ นต้น
• คลาส Character
เป็ นคลาสท่ส
ี ามารถเรียกใช้งานได้ทันที
คล้ายกับคลาส System ท่ใี ช้บ่อยๆ
โดยไม่จำาเป็ นต้องสร้าง
Object
ของคลาสก่อนเรียกใช้งาน
11

Method of Character class

Method : isUpperCase(char ch)
Return Type : boolean
หน้าท่ี :
ทดสอบว่าตัวอักษรเป็ นตัวพิมพ์ใหญ่หรือไม่
พารามิเตอร์ : ch ตัวอักษรท่ต
ี ้องการทดสอบ
ตัวอย่าง : char c = ‘A’;
if (Character.isUpperCase(c))
System.out.println(“Yes UpperCase”);
12

Method of Character class

Method : isLowerCase(char ch)
Return Type : boolean
หน้าท่ี :
ทดสอบว่าตัวอักษรเป็ นตัวพิมพ์เล็กหรือไม่
พารามิเตอร์ : ch ตัวอักษรท่ต
ี ้องการทดสอบ
ตัวอย่าง : char c = ‘a’;
if (Character.isLowerCase(c))
System.out.println(“Yes LowerCase”);
13

Method of Character class

Method : toUpperCase(char ch)
Return Type : char
หน้าท่ี : แปลงตัวอักษรให้เป็ นตัวพิมพ์ใหญ่
พารามิเตอร์ : ch ตัวอักษรท่ต
ี ้องการแปลง
ตัวอย่าง : char c = ‘a’;
System.out.println(Character.toUpperCase(c));

14

Method of Character class

Method : toLowerCase(char ch)
Return Type : char
หน้าท่ี : แปลงตัวอักษรให้เป็ นตัวพิมพ์เล็ก
พารามิเตอร์ : ch ตัวอักษรท่ต
ี ้องการแปลง
ตัวอย่าง : char c = ‘A’;
System.out.println(Character.toLowerCase(c));

15

Method of Character class

Method : toString(char ch)
Return Type : String
หน้าท่ี : แปลงตัวอักษรให้เป็ นข้อความ
พารามิเตอร์ : ch ตัวอักษรท่ต
ี ้องการแปลง
ตัวอย่าง : char c = ‘A’;
System.out.println(Character.toString(c));

16

Practice

• Method อ่ ืนๆท่ใี ห้ศึกษาจาก Java Document
• ทดลองเรียกใช้เมดธอดท่ีมีใน Slide แล้วดูผล
พร้อมทัง้ศึกษาให้เข้าใจ
• ทดลองเรียกใช้เมดธอดท่ีไม่มีใน Slide
แล้วดูผล พร้อมทัง้ศึกษาให้เข้าใจ

17

String

• คลาส String
เป็ นคลาสท่ท
ี ำางานเก่ย
ี วกับตัวข้อความต่างๆ
ท่ใี ช้บ่อยมาก
มีความสำาคัญในการพัฒนาโปรแกรมมาก
• คลาส String
เป็ นคลาสท่ส
ี ามารถเรียกใช้งานได้ทันที
คล้ายกับคลาส System ท่ใี ช้บ่อยๆ
โดยไม่จำาเป็ นต้องสร้าง Object
ของคลาสก่อนเรียกใช้งาน
18

Method of String class

Method : charAt(int index)
Return Type : char
หน้าท่ี :
แสดงตัวอักษรของข้อความท่ต
ี ำาแหน่งท่ีต้อ
งการ
พารามิเตอร์ : index ตำาแหน่งท่ต
ี ้องการ
เร่ิมนับจาก 0
ตัวอย่าง : String str = “Hello World”;
System.out.println(str.charAt(8)); // ‘r’
19

Method of String class

Method : compareTo(String anotherString)
Return Type : int
หน้าท่ี : เปรียบเทียบข้อความ 2
ข้อความถ้าเท่ากันจะได้ 0
พารามิเตอร์ : anotherString ข้อความทดสอบ
ตัวอย่าง : String str = “Hello World”;
System.out.println(str. compareTo(“Hello World”));
// 0
20

Method of String class

Method : compareToIgnoreCase(String anotherString)
Return Type : int
หน้าท่ี : เปรียบเทียบข้อความ 2
ข้อความโดยไม่สนใจตัวใหญ่หรือเล็ก
ถ้าเท่ากันจะได้ 0
พารามิเตอร์ : anotherString ข้อความทดสอบ
ตัวอย่าง : String str = “Hello World”;
System.out.println(str. compareTo(“hello world”));
// 0
21

Method of String class

Method : copyValueOf(char[] data)
Return Type : String
หน้าท่ี : สร้าง String จากอาเรย์ของตัวอักษร
พารามิเตอร์ : data อาเรย์ของตัวอักษร
ตัวอย่าง : char [] data = {'a','b'};
String str = String.copyValueOf(data) ;
System.out.println(str); // “ab”
22

Method of String class

Method : copyValueOf(char[] data, int offset, int count)
Return Type : String
หน้าท่ี : สร้าง String จากอาเรย์ของตัวอักษร
พารามิเตอร์ : data อาเรย์ของตัวอักษร
offset
ตำาแหน่งในอาเรย์ท่ต
ี ้องการเร่ิม copy
count จำานวนตัวอักษรท่ีตอ
้ งการ
copy
ตัวอย่าง : char [] data = {‘a’,’b‘,’c’};
String str = String.copyValueOf(data,1,2) ;

23

Method of String class

Method : endsWith(String suffix)
Return Type : boolean
หน้าท่ี :
ทดสอบว่าข้อความลงท้ายด้วยข้อความท่ต
ี ้อ
งการหรือไม่
พารามิเตอร์ : suffix
ข้อความท่ใี ห้ในการทดสอบ
ตัวอย่าง : String str = “Hello Thailand”;
if(str.endsWith(“and”))
System.out.println(“Yes suffix is \”and\””);
24

Method of String class

Method : indexOf(int ch) , indexOf(String str)
Return Type : int
หน้าท่ี :
หาว่าตัวอักษรท่ต
ี ้องการท่พ
ี บตัวแรกเป็ นตัว
ท่เี ท่าใดในข้อความ
พารามิเตอร์ : ch ตัวอักษรท่ต
ี ้องการทดสอบ
ตัวอย่าง : String str = “Hello Thailand”;
System.out.println(str.indexOf(‘a’)); // 8
25

Method of String class

Method : length()
Return Type : int
หน้าท่ี : หาความยาวของข้อความ
พารามิเตอร์ : ไม่มี
ตัวอย่าง : String str = “Hello Thailand”;
System.out.println(str.length()); // 14

26

Method of String class

Method : replace(char oldChar, char newChar)
Return Type : String
หน้าท่ี : แทนท่ข
ี ้อความด้วยข้อความท่ีตอ
้ งการ
พารามิเตอร์ :
oldChar อักษรท่ต
ี ้องการถูกแทนท่ี
newChar อักษรท่ต
ี ้องการไปแทนท่ี
ตัวอย่าง : String str = “Hello Thailand”;
System.out.println(str.replace(“lo”, “xx”));
27

Method of String class

Method : substring(int beginIndex, int endIndex)
Return Type : String
หน้าท่ี : ตัดข้อความท่ีตอ
้ งการ
โดยระบุตำาแหน่งท่ต
ี ้องการตัด
พารามิเตอร์ : beginIndex ตำาแหน่งแรกท่เี ร่ิมตัด
endIndex ตำาแหน่งสุดท้ายท่ห
ี ยุดตัด
ตัวอย่าง : String str = “Hello Thailand”;
System.out.println(str.substring(6,10)); //Thai
28

Method of String class

Method : toCharArray()
Return Type : Char []
หน้าท่ี : แปลงข้อความเป็ นอาเรย์ของ char
พารามิเตอร์ : ไม่มี
ตัวอย่าง : String str = “Hello”;
char [ ] ch = new char[5];
ch = str.toCharArray();
29

Method of String class

Method : toLowerCase() , toUpperCase()
Return Type : String
หน้าท่ี :
แปลงข้อความเป็ นตัวพิมพ์เล็กหรือใหญ่ทัง้
หมด
พารามิเตอร์ : ไม่มี
ตัวอย่าง : String str = “Hello Thailand”;
System.out.println(str.toUpperCase());
// HELLO THAILAND

30

Method of String class

Method : trim()
Return Type : String
หน้าท่ี : ตัดช่องว่าง หน้าและหลัง
ของข้อความ
พารามิเตอร์ : ไม่มี
ตัวอย่าง : String str = “ Hello Thailand ”;
System.out.println(str.trim());
// “Hello Thailand”
31

Method of String class

Method : split(String regex)
Return Type : String []
หน้าท่ี :
แยกข้อความโดยใช้ตัวอักษรท่ก
ี ำาหนดเป็ นตั
วแบ่ง
พารามิเตอร์ : regex
ตัวอักษรท่เี ป็ นตัวแบ่งข้อความ
ตัวอย่าง : String str = “Hello Thailand”;
String [ ] sepstr = str.split(“ ”);
// sepstr = {“Hello”, “Thailand”}
32

Practice
• Method ท่น
ี ่าสนใจ contain, replace และอ่ ืนๆ
• หัดเปิ ด Document ให้คล่อง และทดลองทำา
method ท่ม
ี ีใน Slide และ method
ท่ต
ี นเองสนใจ
• หัดเปิ ด Document ของคลาส Math และ System
เพ่ ือเตรียมตัวเรียนใน Part ต่อไป
33

String Constructor
• ในการสร้างตัวแปรประเภท String นัน

สามารถกำาหนดค่าของ String ได้ทันที
โดยการเรียกใช้ Constructor ของคลาส String
ในขณะสร้าง Object เช่น
char[] harray = {'h','e','l','l','o',' ','c','r','u','e','l','
','w','o','r','l','d','.'};
String h1 = new String(harray);
String h2 = "hello cruel world.";
String h3 = new String("hello cruel world.");

34

ตัวอย่าง String Constructor

35

StringBuffer
• StringBuffer เป็ นอีกคลาสท่ม
ี ีความสำาคัญ
มีความแตกต่างจาก String ในส่วนท่ี Object
ของ StringBuffer สามารถูกเปล่ย
ี นแปลงค่าได้
ในขณะท่ี Object ของ String
ไม่สามารถถูกเปล่ย
ี นแปลงค่าได้

36

ตัวอย่าง StringBuffer

37

Runtime Class

• คลาส Runtime
เป็ นคลาสท่ีติดต่อกับสภาพแวดล้อมของโป
รแกรมท่ท
ี ำางานอยู่ในเคร่ ือง โดยคลาส
Runtime จะสามารถทำางานได้หลายอย่างเช่น
เรียกโปรแกรมอ่ ืนขึน
้ มาทำางาน โดยใช้
Method exec()
public class Runtime extends Object
Method
int
availableProcessors()
Process
exec(String command)
void
exit(itn status)
38

ตัวอย่าง Runtime

39

System Class
• คลาส System
เป็ นคลาสท่ถ
ี ูกเรียกใช้งานบ่อยมาก
จนอาจไม่รู้สก
ึ ของความสำาคัญ
แต่ในความเป็ นจริงแล้ว
เป็ นคลาสท่จี ำาเป็ นและขาดไม่ได้ในการทำางา
นของภาษาจาวา
เป็ นคลาสท่ท
ี ำาหน้าท่ใี นการติดต่อกับระบบ
40

System Class

public class System extends Object
Attribute
static PrintStream err
static InputStream in
static PrintStream out
Method
static void
arraycopy(Object src, int srcPos,
Object dest,int destPos,int length)
static long
currentTimeMillis()
static void
exit(int status)
static void
gc()

41

Object Class
• คลาส Object
เป็ นคลาสท่ีถือเป็ นคลาสพ้ืนฐานของจาวาท่ี
สามารถสืบทอดไปเป็ นคลาสอ่ ืนๆได้ และมี
method ให้เรียกใช้งานได้เหมือนกัน สรุปคือ ทุก
class สามารถเรียกใช้ method ของ class Object ได้ เช่น
• toString();
• Integer.toString();
• Long.toString();
• Character.toString();
42

ตัวอย่าง Object Class

public class Object
Constructor
Object()
Method
protect Object
boolean
protected void
Class
int
void
void
String
void
void
void

clone()
equals(Object obj)
finalize()
getClass()
hashCode()
notify()
notifyAll()
toString()
wait()
wait(long timeout)
wait(long timeout, int nanos)

43

What is Java.util.*

• Java.util
เป็ นกลุ่มของคลาสท่ส
ี นับสนุนการทำางานเพ่ ื
ออำานวยความสะดวกในการทำางานบางประ
การ
• ในการเรียกใช้งานคลาส java.util
จำาเป็ นต้องมีการ Import
คลาสเข้ามาด้วยเสมอ โดยใช้คำาสั่ง Import
ดังตัวอย่าง
import java.util.*;
44

ตัวอย่างคลาสใน Java.util.*
• ตัวอย่าง Class ท่ส
ี ำาคัญใน Java.util.* ได้แก่
• StringTokenizer
• ArrayList
• Date
• Calendar

45

StringTokenizer

• คลาส StringTokenizer
เป็ นคลาสท่ม
ี ีความสามารถคล้ายกับ Method
String.split() แต่ StringTokenizer
จะมีความสามารถสูงกว่าในหลายๆ ส่วน
• การใช้งานต้องมีการ import
java.util.StringTokenizer; ด้วยเสมอ
• หน้าท่ีของ StringTokenizer เป็ นคลาสท่ใี ช้แยก
String ออกเป็ นส่วนๆ
แต่ละส่วนจะถูกเรียกว่า Token เม่ ือทำาการ
แยก String เป็ น Token ได้แล้ว
46

StringTokenizer

StringTokenizer class allows application to break a string into tokens.
Constructors
– StringTokenizer(String str)
– StringTokenizer(String str, String delim)
– StringTokenizer(String str , String delim, boolean returnDelims)
// returnDelims=true แยก delim ออกจากัน แต่เอามาทุก token
// returnDelims=true ตัด token ที่เป็น delim ออก
Methods
– int countTokens() // นับจำานวน Token ทัง้หมด
– boolean hasMoreTokens() // ตรวจสอบ Token
ท่ีจะแสดงผลว่ายังมีเหลือหรือไม่
– String nextToken() // เรียก Token ตัวต่อไป
– String nextToken(String delim)

47

ตัวอย่าง StringTokenizer
import java.util.*;

48

ตัวอย่าง StringTokenizer
import java.util.*;

49

ตัวอย่าง StringTokenizer
import java.util.*;

50

ตัวอย่าง StringTokenizer

import java.util.*;

51

ArrayList

• คลาส ArrayList
เป็ นคลาสท่ท
ี ำาหน้าท่ค
ี ล้ายกับ Array
แต่มีความสามารถสูงกว่าโดยสามารถมีการเ
พ่ม
ิ ข้อมูลเข้าไปได้เร่ ือยๆ ในลักษณะของ
list ท่ต
ี ่อกันไปเร่ ือยๆ
• การเรียกใช้ ArrayList ต้อง import
java.util.ArrayList; ด้วยเสมอ
52

ArrayList

• Method ท่ีสำาคัญของ ArrayList
Methods
– boolean add(E o) // เพ่ิมข้อมูลต่อท้าย List ไปเร่ ือยๆ
– void clear() // ลบข้อมูลทัง้หมดใน List
– boolean contains(Object elem) // ตรวจสอบข้อมูลใน List
ว่าเป็ นข้อมูลท่ีตรงกันหรือไม่
– E get(int index) // เรียกข้อมูลใน List ท่ีตำาแหน่งนัน
้ ๆ
– int indexOf(Object elem) // หาตำาแหน่งของข้อความท่ีต้องการใน List
– boolean isEmpty() // ตรวจสอบว่า List ว่างหรือไม่
– int lastIndexOf(Object elem) // หาตำาแหน่งสุดท้ายของ List
ท่ีมข
ี อ
้ มูลท่ีต้องการ
– E remove(Object o) // ลบข้อมูลใน List ท่ีตำาแหน่งท่ีต้องการ
– int size() // หาขนาดของ List
– Object[] toArray() // แปลงจาก List เป็ น Array

53

ตัวอย่าง ArrayList

54

Date & Calendar

• คลาส Date และ Calendar
เป็ นท่ีทำางานเก่ียวกับวันและเวลา
ในการแสดง หรือ คำานวนวันเวลาต่างๆ
• ในการเรียกใช้งาน Date ต้อง import
java.util.Date; ด้วยเสมอ
• ตัวอย่าง

55

Date & Calendar

• ในคลาสของ Date จะมี Attribute
ท่ใี ช้ในการแสดงผลวันเวลาต่างๆ
ท่ส
ี ำาคัญหลายตัวเช่น

• YEAR, MONTH, DAY_OF_MONTH, HOUR เป็ นต้น

56

Date & Calendar

57

SimpleDateFormat
• ในการแสดง รูปแบบของวันเวลา
สามารถกำาหนดรูปแบบเองได้เพ่ ือความสวย
งามโดยใช้คณ
ุ สมบัตข
ิ อง SimpleDateFormat จาก
Java.text เข้ามาช่วย
• ในการเรียกใช้ SimpleDateFormat ต้อง import
java.text.*; ด้วย

58

SimpleDateFormat

59

SimpleDateFormat

• ในการแสดง รูปแบบของวันเวลา
สามารถกำาหนดรูปแบบเองได้เพ่ ือความสวย
งามโดยใช้คณ
ุ สมบัตข
ิ อง DateFormat จาก
Java.text เข้ามาช่วย
• ในการเรียกใช้ DateFormat ต้อง import
java.text.*; ด้วย

60

SimpleDateFormat

61

DecimalFormat
• เป็ นคลาสท่ช
ี ่วยในการแสดงผลของ
ตัวเลขให้มีความสวยงามขึน

• ในการเรียกใช้ DecimalFormat ต้อง import java.text.*;
ด้วย

62

DecimalFormat

63

Sign up to vote on this title
UsefulNot useful