Transcript String

เริม
่ ตนเขี
ย
นโปรแกรมภาษาจาวา
้
(Introduction to JAVA
Programming)



คลาสชือ
่ javaApplication1 ชือ
่ ไฟลจึ
์ งต้องเป็ น
javaApplication1.java
เมือ
่ โปรแกรมเริม
่ ทางาน JRE จะค้นหาเมธอด
main() เพือ
่ ประมวลผลตามชุดคาสั่ งทีเ่ ขียนไว้
ภายในเครือ
่ งหมายวงเล็บ { }
เมธอด main() จะต้องมีคย
ี เวิ
์ รด
์ public, static,
void และ
พารามิเตอรทีเ่ ป็ นอารเรยของขอมูลประเภท
2
3

คอมเมนตบรรทั
ดเดียวใช้เครือ
่ งหมาย //
์

คอมเมนตที
่ งหมาย
่
้ า ใช้เครือ
์ เ่ ป็ นยอหน
/* */
4



ตัวแปร (Variable) คือ ชือ
่ หรือ
่ าหนดขึน
้
สั ญลักษณที
์ ก
เพือ
่ การอางอิ
งตาแหน่งหน่วยความจาที่
้
ใช้เก็บขอมู
้ ล
สามารถเก็บขอมู
่ ช
ี นิดของขอมู
้ ลทีม
้ ล
แตกตางกั
นได้
่
สามารถเปลีย
่ นแปลงคาข
่ อมู
้ ลได้
ตลอดเวลา
5



ตัวแปรนั้นต้องขึน
้ ต้นดวยตั
วอักษร
้
ห้ามตัง้ ชือ
่ ตัวแปรขึน
้ ต้นดวยตั
วเลข, เครือ
่ งหมาย,
้
สั ญลักษณอื
่ ใด
์ น
ถัดจากตัวอักษรแรกของตัวแปรจะตามดวยตั
วอักษร
้
หรือตัวเลข หรือเครือ
่ งหมาย $ หรือเครือ
่ งหมาย
_ ก็ได้
ห้ามเป็ นเครือ
่ งหมายอืน
่ ๆ และห้ามเวนช
้ ่ องวาง
่
ตัวแปรในภาษา Java เป็ น Case Sensitive นั่น
คือ
การตัง้ ชือ
่ ดวยภาษาอั
งกฤษตัวพิมพเล็
้
่
์ กจะแตกตาง
จาก
การตัง้ ชือ
่ ดวยภาษาอั
งกฤษตัวพิมพใหญ
้
่
์
6






7

รูปแบบการประกาศตัวแปร (Variable
Declaration)
dataType VarName [= Value];
โดยที่
dataType เป็ นชนิดขอมู
่ ้องการ
้ ลของตัวแปรทีต
VarName เป็ นชือ
่ ตัวแปรโดยตัง้ ตามกฎการตัง้
ชือ
่
Value
เป็ นคาของตั
วแปร
่
8

ตัวอยาง
เช่น
่
String name;
//ประกาศตัวแปร name แทนข้อมูลชือ
่
เป็ นชนิดขอความ
้
float score;
//ประกาศตัวแปร score แทนข้อมูล
คะแนนสอบ เป็ นชนิดเลขทศนิยม
char grade;
//ประกาศตัวแปร grade แทนข้อมูลเกรด
เป็ นชนิดขอมู
้ ลตัวอักขระ

การประกาศตัวแปรพรอมกั
บการ
้
กาหนดคาเริ
่ ตน
่ ม
้
String name = “Boy”; //ประกาศตัวแปร name มีคาเริ
่ ตน
่ ม
้
เทากั
่ บ Boy
float score = 20.0f; //ประกาศตัวแปร score มีคาเริ
่ ตน
่ ม
้
9

แบงเป็
่ น 3 กลุม
่ ตามรูปแบบการใช้งาน
ไดแก
้ ่

Primitive Data Types ชนิดของขอมู
้ ฐาน
้ ลพืน
ของภาษา






Integer (จานวนเต็ม)
Floating point (เลขทศนิยม)
Textual (อักขระ)
Logical (ตรรกะ/คาความจริ
ง)
่
Class Types ชนิดของขอมู
่ ายทอดมาก
้ ลทีถ
่
จากคลาสหรือ Interface
Array Types ชนิดของขอมูลทีเ่ ป็ นอารเรย
10


เป็ นขอมู
้ ลตัวเลขทีไ่ มมี
่ คาเป็
่ นทศนิยม
ใช้เป็ นคาคงที
่ ตัวแปร และนิพจนได
่
์ ้
ชนิด
ข้อมูล
byte
short
int
long
ขนาด
(ไบต)์
1
2
4
8
ช่วงการเก็บขอมู
้ ล (คาที
่ ่
เป็ นไปได)้
-128 ถึง +127
-32,768 ถึง +32,767
-2,147,483,648 ถึง
+2,147,483,647
9,223,372,036,854,775, 11
Tip :
 ข้อมูลเลขจานวนเต็มชนิด long จะใช้อักษร L หรือ
l ไว้ทายค
าตั
้
่ วเลข เช่น
2147483648L แสดงวาข
่ อมู
้ ลเลขนี้จะเก็บในตัวแปร
ชนิด long
 ในกรณีทไ
ี่ มมี
าตั
่ ตวั อักษร L หรือ l ตอท
่ ายค
้
่ วเลข
 คอมไพเลอรจะรั
งกลาวเป็
นเลขจานวนเต็ม
้ าเลขดั
่
่
์ บรูว
ชนิด int เช่น
long D = 2147483648;
คอมไพเลอรจะมอง
2147483648 เป็ นเลขจานวน
์
เต็มชนิด int
ซึ่งมีคาเกิ
่ นช่วงการเก็บขอมู
้ ลของชนิด int
12

การกาหนดตัวแปรเพือ
่ เก็บขอมู
้ ลเลขจานวนเต็มที่
มากกวา่ 32767
เป็ นข้อมูลชนิด short integer ทาให้เกิดปัญหา
overflow ของขอมู
้ ล
short
เก็บขอมู
้ ลขนาด
2 ไบต ์
ช่วงข้อมูลคือ -32,768
ถึง +32,767
13


เป็ นขอมู
่ ค
ี าเป็
้ ลตัวเลขทีม
่ นทศนิยม
สามารถเขียนให้อยูในรู
ปตัวเลขยกกาลัง
่
ได
้ ด
ชนิ
ขนาด
ช่วงการเก็บขอมู
้ ล (คาที
่ ่
ข้อมูล
(ไบต)์
เป็ นไปได)้
float
4
double
8
-3.40292347E+38 ถึง
+3.40292347E+38
1.79769313486231570E
+308 ถึง
14
Tip :
 ข้อมูลชนิดตัวทศนิยมจะใช้อักษร F หรือ f ไว้
ทายค
าตั
้
่ วเลขทศนิยม เช่น
0.07F
แสดงวาข
่ อมู
้ ลเลขทศนิยมนี้จะเก็บในตัว
แปรชนิด float
 ใช้ตัวอักษร D หรือ d ไว้ทายค
าตั
้
่ วเลขทศนิยม
เช่น
3.14D แสดงวาข
่ อมู
้ ลเลขทศนิยมนี้จะเก็บในตัวแปร
ชนิด double
 สามารถกาหนดคาตั
่ เก็บในตัว
่ วเลขจานวนเต็มเพือ
แปรชนิด float หรือ double ได้ โดยไมต
่ ้องมี
ใช้ตัวอักษรตอท
าตั
เช่น
่ ายค
้
่ วเลข
15




เป็ นขอมู
่ ค
ี วามยาวหนึ่งตัวอักขระ
้ ลทีม
ใช้พืน
้ ทีห
่ น่วยความจา 2 ไบตต
่ 1
์ อ
ตัวอักขระ
เก็บขอมู
้ ลไดถึ
้ ง 65,536 ตัวอักษร
ขอมู
้ ลในกลุมนี
่ ้ ไดแก
้ ่



ตัวอักษร (A ถึง Z, a ถึง z)
ตัวเลข (0 ถึง 9)
สั ญลักษณพิ
ๆ เช่น
์ เศษตาง
่
ฯลฯ
+-=$*
16


การใช้งานตัวอักขระตองอยู
ภายใน
้
่
เครือ
่ งหมาย single quote เช่น ’J’, ’m’,
‘9’ เป็ นตน
้
สามารถเรียงลาดับตัวอักขระตามคาของรหั
ส
่
อักขระ
รหัสStandard
แอสกี้
แอสกี้ (ASCII: American
‘0’
48
Code for Information
ได้
‘1’ Interchange)
49
‘A’
65
ตัวอยางเช
น
่
่
‘B’
66
‘a’
‘b’
97
98
17
18



เป็ นขอมู
่ ค
ี าความจริ
งเป็ นจริงหรือเป็ น
้ ลทีม
่
เท็จเทานั
่ ้น
แทนคาด
true หรือ false
่ วย
้
ไมใช
่ ๆ แทน
่ ้เลขจานวนเต็มหรือคาอื
่ น
คาความจริ
ง
่
19


ใช้ตัวแปรเก็บขอมู
้ ลชนิดขอความใน
้
รูปแบบของคลาส
การใช้งานขอความต
องอยู
ภายใน
้
้
่
เครือ
่ งหมาย double quote เช่น
“JAVA”, “Program” เป็ นตน
้
ตัวอยางเช
่
่น
String strProvice = “Bangkok”;
String strMonth = “May”;
20
เลขจานวนเต็ม
1. int เป็ น default
2. long ต้องระบุ l หรือ
L หลังเลข



เลขทศนิยม
1. double เป็ น default
2. float ต้องระบุ f หรือ
F หลังเลข
คาคงที
่ (Constant) ทาหน้าทีเ่ ก็บขอมู
่
้ ลที่
ต้องการกาหนดไวไม
่ นแปลง
้ ให
่ ้มีการเปลีย
ตลอดเวลา เช่น คา่ PI เป็ นตน
้
เ่ หมือนกับการประกาศตัว
การประกาศคาคงที
่
แปรทีม
่ ก
ี ารกาหนดคา่ เพียงแตจะมี
การใช้คีย ์
่
เวิfinal
รด
final นาหน
VarName
[= Value];
์ dataType
้า
รูปแบบการใช้งาน
โดยที่
dataType
คาคงที
ท
่ ต
ี่ ้องการ
่
เป็ นชนิดขอมู
้ ลของ
21
public class variable {
public static void main(String[] args) {
char c = ‘Y’;
int i = 1; double d = 2.5;
float f = 1.2f;
boolean b = true;
c=Y
final double SALES_TAX_RATE =i =1
0.07d;
String s = “Hello”;
d = 2.5
System.out.println("c = "+ c);
f = 1.2
System.out.println("i ="+ i);
b = true
SALES_TAX_RA
System.out.println("d ="+ d);
TE = 0.07
System.out.println("f ="+ f);
s = Hello
System.out.println("b ="+ b);
System.out.println(“SALES_TAX_RATE = ” +
SALES_TAX_RATE);
System.out.println("s ="+ s);
}
22

ทาหน้าทีจ
่ ด
ั การหรือดาเนินการใด ๆ
ระหวางตั
วแปร หรือ
่
Operato
ตัวถูกกระท
า (Operand)


Operand r
Expression
Operand 
นิพจน์ (Expression) หมายถึง


ข้อความหรือประโยคทีเ่ ขียนอยูในรู
ป
่
สั ญลักษณ ์
โดยนาขอมู
่
้ ล, ตัวแปร, ฟังกชั
์ นหรือคาคงที
่
มาสั มพันธกับ
23
24

ใช้สาหรับกาหนดคาข
่ อมู
้ ลให้กับตัวแปรทางดานซ
้
้าย
ของตัตั
วด
ว าเนินการ
คาอธิ=บาย
ตัวอยาง
่
ดาเนินกา
ร
=
+=
-=
*=
กาหนดคา่
เพิม
่ คาแล
วให
่
้
้
คาใหม
่
่
ลดคาแล
วให
่
้
้
คาใหม
่
่
คูณแลวใหคา
x = y คือ นาคา่ b มาใส่ใน
x
x += y คือ x = x + y หรือนา
x+y
แลวให
กั
้
้คาใหม
่
่ บ x
x -= y คือ x = x - y หรือนา
x–y
แลวให
กั
้
้คาใหม
่
่ บ x
x *= y คือ x = x * y หรือนา
25

กาหนดให้ตัวแปร A เป็ นชนิดเลข
จานวนเต็ม การแทนค
และ A =า่ 25คาของ
่
นิพจน์
นิพจน์
A += 5 A = A + 5
A -= 25 A = A - 25
A *= 10 A = A * 10
A /= 25 A = A / 25
A %= 5 A = A % 5
นิพจน์
30
0
250
1
0
26
ตัว
คาอธิบาย
ดาเนินกา
ร
+
*
บวก
ลบ
คูณ
ตัวอยาง
่
x + y ผลลัพธคื
์ อ
บวก y
x – y ผลลัพธคื
์ อ
y
x * y ผลลัพธคื
์ อ
คูณ y
x / y ผลลัพธคือ
x
x ลบ
x
x
27
ขอสั
้ งเกต


ผลการทางานของตัวดาเนินการ +, -, * และ
/ ทีม
่ ต
ี วั แปรเป็ น
ข้อมูลชนิดเลขทศนิยม จะไดเป็
ยม
้ นคาทศนิ
่
เสมอ
ผลการทางานของตัวดาเนินการ +, -, * และ
/ ทีม
่ ต
ี วั แปรเป็ น
ข้อมูลชนิดเลขจานวนเต็ม จะไดเป็
้ นคา่
จานวนเต็มเสมอ
โดยทีผ
่ ลลัพธจากการหาร
จะไดค
์
้ าจ
่ านวน
28

กาหนดให้ตัวแปร A, B และ C เป็ น
ชนิดเลขจานวนเต็ม และ A = 11 และ
B =นิ5
พจน์
A
B
C
C=A+
B
C=AB
C=A*
B
C=A/
B
11
5
16
11
5
6
11
5
55
11
5
2
29

กาหนดให้ตัวแปร A, B และ C เป็ นชนิด
เลขจานวนทศนิยม และ A = 10.5 และ
B =นิ2.5
พจน์
A
B
C
C=A+
B
C=AB
C=A*
B
C=A/
B
10.5
2.5
13.0
10.5
2.5
8.0
10.5
2.5
26.25
10.5
2.5
4.2
30


ใช้สาหรับเปรียบเทียบขอมู
วถูกกระทาทาง
้ ลระหวางตั
่
ดานซ
วดาเนินการ ไดผลที
ม
่ ค
ี า่
้
้ายและดานขวาของตั
้
้
เป็ นจริง (true) หรือเท็จ (false)
ใช้ในการตั
าหนดทิ
ตัว ดสิ น
คใจก
าอธิบ
าย ศทางของการท
ตัวอยาง
่ างานของ
โปรแกรม
ดาเนินกา
ร
==
!=
<
<=
เทากั
่ x
่ นหรือไม่ x == y จะเป็ นจริงเมือ
เทากั
่ บ y
ไมเท
x != y จะเป็ นจริงเมือ
่ x ไม่
่ ากั
่ น
หรือไม่
เทากั
่ บ y
น้อยกวา่
x < y จะเป็ นจริงเมือ
่ x น้อย
กวา่ y
น้อยกวาหรื
อ x <= y จะเป็ นจริงเมือ
่
่
31

กาหนดให้ตัวแปร A, B เป็ นชนิดเลขจานวน
ทศนิยม ตัวแปร C, D
เป็ นขอมู
อักขระ
และ
A A = -3,B B = 5,
้ ลชนิดนิตัพวจน
์
-3 <= 5
true
C = ‘t’ และ DA=<=
‘s’10
A+B > 0 (-3)+5 > 0
A-(-3) = B- (-3)-(-3) =
5
5-5
C == ‘t’
't' == 't'
C == ‘T’
't' == 'T'
C<D
't' < 's'
D > ‘a’
's' > ‘a’
false
true
true
false
false
true
32


ใช้สาหรับกาหนดเงือ
่ นไขให้กับขอมู
่ ะนามา
้ ลทีจ
ประมวลผลในทางตรรกศาสตร ์
ในกรณีทม
ี่ เี่ งือ
่ นไขมากกวา่ 1 เงือ
่ นไข ไดผลที
ม
่ ี
้
คาเป็
นจริง (true) หรือเท็จ
่ ตั
ว
ความหมา ตัวอยาง
คาอธิบาย
่
ใช้ในการตัดสิ นใจกาหนดทิศทางของการทางานของ
ดาเนินกา
ย
โปรแกรม เช่นกัน
ร
&&
and
||
or
x && y มีคาเป็
่
่ นจริง ก็ตอเมื
่ อ
x และ y มีคาเป็
่ นจริง
x || y มีคาเป็
่ x
่ นจริง ก็ตอเมื
่ อ
หรือ y หรือ
ทัง้ x และ y มีคาเป็
่ น
จริง
33

เมือ
่ นามาเปรียบเทียบคาความจริ
งของนิพจน์ โดย
่
กาหนดให้ x และ y เป็ น
ตัวถูกดาเนินการทางตรรกศาสตร ์ จะไดผลการ
้
x งตาราง
y
x && y x || y
!x
!y
ทางานดั
true
true
true
true
false false
true false
false
true
false true
false true
false
true
true false
false false
false
false
true true
34

กาหนดให้ตัวแปร A เป็ นชนิดเลขจานวน
ทศนิยม และ ตัวแปร B เป็ นขอมู
้ ลชนิดตัว
อักขระ และ A = 10การแทนค
และ Bา่ = ‘X’คาของ
่
นิพจน์
(A > 0) && (A <
15)
(A > 0) && (A <
10)
(A > 0) || (A < 5)
(A <> 5) || (B ==
‘X’)
! (A != 10)
นิพจน์
นิพจน์
T && T
true
T && F
false
T || F
true
T || T
true
! (F)
true
35
ตัวดาเนินการทีม
่ ี operand (ตัวถูกกระทา) เพียง 1
ตัว
ว เชความหม
่ วคอย
า/ลดค
า่การ
่ น การเพิตัม
่ า่
ตั
ข้อสั งเกต
ดาเนินก
าย
ง
ทางาน
าร

++
เพิม
่ คา่
หนึ่งคา่
ให้กับตัว
แปร
A=
B++
A=B
B=B+
1
A=
++B
B=B+
1
A=B
กาหนดคา่ ให้กับตัว
แปร A
กอน
เพิม
่ คา่ ตัวแปร
่
B
เพิม
่ คา่ ให้ตัวแปร
B
กอน
กาหนดคา่
่
ให้กับตัวแปร A
กาหนดคา่ ให้กับตัว
36

กาหนดให้ตัวแปร A, B เป็ นชนิดเลขจานวน
เต็ม นิและ
พจน์ A = 5 A
B
B = A++
6
5
B = ++A
6
6
B = A-- + 4
4
9
B = ++A +
6
10
4
B = 5 * A-4
25
37
public class increment {
public static void main(String[] args) {
int x, y;
x=10;
ส่งคา่ x ไปให้ตัวแปร y กอน
y=x++;
่
แลวจึ
เพิม
่ คา่ y=x"+y);
System.out.println("x
้ =ง"+x+"
y=++x;
เพิม
่ คา่ x แลว
้ จึง ส่งคา่ x
System.out.println("x
=้ตั"+x+"
ไปให
วแปร y=y "+y);
}
x = 11
}
y= 10
x = 12
38
(2 + 3) * 5 = 25
(7 + 3) * (10 - 2)
2+3*5
(5 + 2) * 15 % 4
39
int x;
x=5+2*4+15*2/7;
double x;
x=5+2*4+15*2/7;
double x;
x=5+2*4+15*2.0/7
;
double x;
x=5.0+2*4+15*2/7
;
X=17
X=17.0
X=17.2857142857
14285
X=17.0
40

Implicit Type Conversion


เป็ นการแปลงชนิดของขอมู
ี่ อมู
้ ลในกรณีทข
้ ลมีชนิด
ตางกั
น
่
กระทาอัตโนมัต ิ โดยคอมไพเลอร ์ ซึ่งมีเงือ
่ นไข
ดังนี้


ข้อมูลใด ๆ จะต้องมีชนิดของขอมู
้ ลทีเ่ ขากั
้ นได้
(compatible type)
คือ มีชนิดเป็ นตัวเลขเหมือนกัน
เป็ นการแปลงจากชนิดของขอมู
่ ข
ี นาดเล็กไปเป็ น
้ ลทีม
ชนิดของขอมู
่ ข
ี นาดใหญกว
้ ลทีม
่ าเท
่ านั
่ ้น
41

Explicit Type Conversion (casting) เป็ นการแปลง
โดยผู้เขียนโปรแกรม valNameResult = (dataType)
valName
โดยที่
valNameResult
เป็ นชือ
่ ตัวแปรทีร่ บ
ั คาจากการแปลง
่
ข้อมูล
ต้องมีชนิดขอมู
้ ลเดียวกันกับ dataType
dataType
เป็ นชนิดขอมู
่ องการแปลง
้ ลทีต
้
valName
เป็ นชือ
่ ตัวแปรหรือขอมู
่ องการแปลง
้ ลทีต
้
ชนิดข้อมูล
42




เป็ นการแปลงคาชนิ
ดขอมู
่
้ ลสายอักขระให้เป็ นตัวเลข
หรือ
เปลีย
่ นคาชนิ
ดขอมู
่
้ ลตัวเลขให้เป็ นสายอักขระได้
ใช้เมธอดในคลาส Wrapper ซึ่งเป็ นคลาสทีส
่ ั มพันธ ์
กับขอมู
้ ฐาน (Primitive data type)
้ ลชนิดพืน
เมธอดที
เรียคลาส
กผานชื
อ
่ คลาส Wrapper
่ ั มพันธ
กั
บชนิใ่ ดช้
่ Primitive
์
เมธอดทีใ่ ที
ชส
้
Wrappe
Data
เปลีย
่ นเป็ นสาย
ข้อมูลทีต
่ ้องการ
เปลีย
่ นเป็ นตัวเลข
r
Type
อักขระ
Integer
int
Float
float
Double
double
Integer.parseInt(
)
Float.
parseFloat()
Double.parseDo
Integer.toStrin
g()
Float.toString(
)
Double.toStrin
43
44
45
public class changeVar {
public static void main(String[] args) {
int a;
double b= 3;
int c = 5;
a =b+c;
System.out.println("a ="+a);
} Type mismatch: cannot convert from
}
double to int
46
รูปแบบการใช้งาน
System.out.println(argument1 +
argument2 + ... + argumentn)
หรือ
System.out.print(argument1 + argument2
+ ... + argumentn)
โดยที่
argument1, argument2, argumentn เป็ นขอมู
้ ลที่
ต้องการแสดงผล
อาจจะเป็ นขอความ
ตัวแปร หรือนิพจน์ ซึ่ง
้
สามารถเขียนตอกันได
47
อักขระ
พิเศษ
\b
\f
\n
\r
\t
\’
\”
\\
\xxx
ความหมาย
เลือ
่ นเคอรเซอร
ถอยหลั
งไป 1 ตัวอักษร
์
์
ขึน
้ หน้าใหม่
ขึน
้ บรรทัดใหม่
เลือ
่ นเคอรเซอร
ไปทางซ
้ายสุด
์
์
แสดงแท็บตามแนวนอน
แสดงเครือ
่ งหมาย ‘
แสดงเครือ
่ งหมาย “
แสดงเครือ
่ งหมาย \
แสดงตัวอักษรรหัส Ascii เช่น \065 เป็ น
การแสดงตัวอักษร A
48


เมธอด println() เมือ
่ แสดงผลแลวตั
้ วชี้
ตาแหน่งจะอยูต
ดใหม่
่ าแหน่งตนของบรรทั
้
เมธอด print() เมือ
่ แสดงผลแลวตั
้ าแหน่ง
้ วชีต
จะอยูต
อมู
่ สดงผล
่ าแหน่งสุดทายของข
้
้ ลทีแ
ดังตัวอยางต
อไปนี
้
่
่
49
รูปแบบการใช้งาน
System.out.println(Control_String,
argument1, argument2, ..., argumentn)
โดยที่
Control_String ประกอบดวย
รหัสควบคุมการ
้
แสดงผล, รหัสการแสดงผล
และส่วน
ขยายรหัสการแสดงผล
argument1, argument2, argumentn เป็ นขอมู
้ ลที่
ต้องการแสดงผล
50
รหัสการ
แสดงผล
%c
%d
%f
%e
%s
%u
ชนิดของขอมู
้ ลทีใ่ ช้
ตัวอักขระ
เลขจานวนเต็ม
เลขทศนิยม
เลขในรูป exponential
ข้อความ
เลขจานวนเต็มไมคิ
่ ด
ส่วน
รายละเอียดการใช้งาน
เครือ
่ งหมาย
ขยาย
+
ตัวเลข
ให้แสดงผลจากซ้ายไปขวา
ให้แสดงผลจากขวามาซ้าย
กาหนดจานวนตาแหน่งสาหรับการแสดงผล
ถ้าเป็ นการแสดงผลจากขวามาซ้าย และ
จานวนขอมู
่ สดงผลน้อยกวาจ
้ ลทีแ
่ านวน
ตาแหน่งจะเติมส่วนทีเ่ หลือดานซ
้
้ายดวย
้
51
52

ใช้เมธอด showMessageDialog() มี
รูปแบบการใช้งาน ดังนี้
JOptionPane.showMessageDialog(Parent_Window,
Message, Title,Type);
โดยที่
Parent_Window เป็ นชือ
่ ของ parent window
ทีต
่ ้องการแสดงผล
ถ้าคาเป็
่ น null จะแสดง
ไดอะล็อกบ็อกซกลางหน
้ าจอ
์
Message เป็ นขอความที
ต
่ องการแสดงใน
้
้
ไดอะล็อกบ็อกซ ์
Title เป็ นขอความทีป
่ รากฏในสวนของ Title bar
53
Type เป็ นชนิดของไดอะล็อกบ็อกซ ์ ซึ่งจะถูก
กาหนดโดยคาคงที
ต
่ อไปนี
้
่
่







ERROR_MESSAGE เป็ นการแสดงขอผิ
้ ดพลาด และ
แสดงสั ญลักษณ์
INFORMATION_MESSAGE เป็ นการแสดงข้อความ
ทัว่ ไป และแสดงสั ญลักษณ์
PLAIN_MESSAGE เป็ นการแสดงข้อความทัว่ ไป โดย
ไมมี
่ การแสดงสั ญลักษณ์
QUESTION_MESSAGE เป็ นการแสดงในลักษณะ
คาถาม และแสดงสั ญลักษณ์
WARNING_MESSAGE เป็ นการแสดงในลักษณะแจ้ง
เตือน และแสดงสั ญลักษณ์
ในกรณีทไี่ มมี
่ การกาหนดคาในส
่
่ วนของ Title และ
Type
Title จะถูกกาหนดเป็ น “Message”
54

ใช้เมธอด format() มีรป
ู แบบการใช้งาน
ดังนี้
DecimalFormatdf= new
DecimalFormat(argument);
String str= df.format(payment);
โดยที่
argument
ประกอบดวย
้


เป็ นรูปแบบการแสดงผลทีต
่ ้องการ
0 แทนตัวเลข 0 ในกรณีทต
ี่ องการให
้
้แสดงตัวเลข
“#” แทนตัวเลขใดๆ ทีไ่ มใช
่ ่ 0 ในกรณีทเี่ ป็ น
เลข 0 จะไมแสดงผล
่
55
56




รับข้อมูลชนิดของขอมู
อตัวเลขก็
้ ลเป็ นขอความหรื
้
ได้
ตางจากการรั
บขอมู
่
้ ลดวยคลาส
้
InputStreamReader
ทีร่ บ
ั ขอมู
อความเท
านั
้ ลไดเฉพาะข
้
้
่ ้น
การใช้งานคลาส Scanner ต้องสรางออบเจ็
กต ์
้
จากคลาส Scanner กอน
่
จะต้อง import แพ็คเกจ java.util.Scanner และ
ประกาศออบเจ็กตตามรู
ปแบบ ดังนี้
์
Scanner sn = new Scanner(System.in);
โดยที่
57




nextInt() สาหรับรับขอมู
้ ลประเภทเลขจานวนเต็ม
nextFloat() สาหรับรับขอมู
้ ลประเภทเลขจานวนทศนิยม
ชนิด float
nextDouble()
สาหรับรับขอมู
้ ลประเภทเลขจานวน
ทศนิยมชนิด double
nextLine() สาหรับรับขอมู
้ ลประเภทขอความ
้
58

ใช้เมธอด showInputDialog() มีรป
ู แบบ
การใช้งาน ดังนี้
String data =
JOptionPane.showInputDialog(Parent_Wind
ow, Message, Title, Type);
โดยที่
Parent_Window
เป็ นชือ
่ ของ parent window
ทีต
่ ้องการแสดงผล
ถ้าคาเป็
่ น null จะแสดง
ไดอะล็อกบ็อกซกลางหน
้ าจอ
์
59
Message เป็ นขอความที
ต
่ องการแสดงใน
้
้
Type เป็ นชนิดของไดอะล็อกบ็อกซ ์ ซึ่งจะถูกกาหนด
โดยคาคงที
ต
่ อไปนี
้
่
่





ERROR_MESSAGE เป็ นการแสดงขอผิ
้ ดพลาด และแสดง
สั ญลักษณ์
INFORMATION_MESSAGE เป็ นการแสดงข้อความทัว่ ไป
และแสดงสั ญลักษณ์
PLAIN_MESSAGE เป็ นการแสดงข้อความทัว่ ไป โดยไมมี
่
การแสดงสั ญลักษณ์
QUESTION_MESSAGE เป็ นการแสดงในลักษณะคาถาม
และแสดงสั ญลักษณ์
WARNING_MESSAGE เป็ นการแสดงในลักษณะแจ้งเตือน
และแสดงสั ญลักษณ์
ในกรณีทไี่ มมี
่ การกาหนดคาในส
่
่ วนของ Title และ Type
Title จะถูกกาหนดเป็ น “Input”
 Type จะถูกกาหนดเป็ น QUESTION _MESSAGE

60