Variable - WordPress.com

Download Report

Transcript Variable - WordPress.com

1106 102 การเขียนโปรแกรมเชิงวัตถุ
(Object – Oriented
Programming)
Variable, Data type, Expression,
Operators
DataUbon
input,
Data University
outputMukdahan
Ratchathani
Campus : อ.วรยุทธ วงศ์นิล
1
Variable
การประกาศตัวแปร

ตองตั
ง้ ชือ
่ ตัวแปร
้

ตองก
าหนดประเภทขอมู
่ ะเก็บ
้
้ ลทีจ

ตองประกาศก
อนใช
้
่
้
2
public class HelloWorld {
public static void main(String[] args)
{
int number = 0;
double sum = 0.0;
}
}
Variable

ตัวแปร คือ ชือ
่ ทีก
่ าหนดขึน
้ มาเพือ
่ ใช้ในการ
จัดเก็บขอมู
้ ล

รูปแบบการตัง้ ชือ
่ data_type variableName
_
- ชือ
่ ประกอบดวยตั
วอักษร ตัวเลข $ หรือ
้
- ห้ามขึน
้ ตนด
วเลข
้ วยตั
้
- ตัวอักษรใหญไม
อนตัวเล็ก
่ เหมื
่
3
- ตองไม
ซ
้
่ า้ กับคาสงวนของภาษาจาวา
- ตองไมซา้ กับชือ
่ อืน
่ ของโปรแกรมทีใ่ ชมา
Variable
virus11
pailin
month_of_year
7eleven String
per-hour

Public
Yahoo!
รูปแบบการกาหนดคา่ variableName =
variable
หรืออาจจะทาการกาหนดคาให
่
้ตัวแปรใน
4 ขัน
้ ตอนการประกาศเลยก็ได้ เช่น

Kilo
Variable
ถูก
int n ;
double a, b, c ;
double x = 0, y, z = 8.5 ;
String s = “hello” ;
int p ; double q ;
Int s ;
string t ;
y = 6.6 ;
double y ;
int p, double q ;
5
ผิด
Variable
การให้คากั
่ บตัวแปร
 ตัวแปรเก็บไดเฉพาะแบบที
ป
่ ระกาศไว้
้
int a = 20 ;
//ถูก
double x = 1.25 ;
//ถูก
int b = 1.5 ;
//ผิด
double y = 2 ;
//ถูก
int n = “1” ;
//ผิด
String s = 1 ;
//ผิด
6
Variable
ตัวแปร (variable) มีความหมายเดียวกันกับฟิ ลด ์
(field)
 ชนิดของตัวแปร
- instance variable (ทีไ่ มใช
่ ่ ตัวแปรแบบ
static) เป็ นคาที
่ ะไมเหมื
อนกันในแตละ
object
่ จ
่
่
- class variable (ตัวแปร static) คือตัวแปร
ในคลาส จะมีเพียงชุดเดียวเทานั
่ ้น
- local variable คือ ตัวแปรทีถ
่ ก
ู ใช้ภายใน
เมธอดเทานั
่ ใช้เก็บขอมู
่ คราว
่ ้น เพือ
้ ลชัว
- parameters คือ ตัวแปรทีถ
่ ก
ู ส่งไปยังเมธอด
ต7างๆ
่

Operators

ตัวดาเนินการทางคณิตศาสตรมี
์ ลาดับ
ความสาคัญไมเท
่ ากั
่ น ดังนี้
ลาดับที่
เครือ
่ งหมาย
1
2
3
4
5
8
()
++, -*, /, %
+, +=, -=, *=, /=,
%=
Variable
จานวนเต็ม VS จานวนจริง
5/2
5.0 / 2.0
ผลลัพธ ์
”
2
2.5
5.0 / 2
”
2.5
5 / 2.0
”
2.5
5.25 / 0.5
9
”
10.5
Expression
ตัวอยาง
่
2 * 3 + 8 / - (2 – 4) – 1
=
2 * 3 + 8 / - ( - 2) – 1
=
2*3+8/2–1
=
6+8/2–1
=
6+4–1
=
10 – 1
=
9
10
Expression

2+3*4=

-5–3*2=

(5 + 1 * 5) % 5 + 1 =

2 * (5 + (17 % 3 / 2) + 26) * 2 + 4 =
11
การตอ
่ String
System.out.println( “a” + “b” );
//”ab”
System.out.println( “a” + 1 );
//”a1”
System.out.println( 1 + “a” );
System.out.println( “1” + “2” );
System.out.println( “1” + 2 );
System.out.println( 1 + “2” );
System.out.println( “a” + 1 + 2 );
//
12
System.out.println(
“a” + ( 1 + 2) );
//
//
//
//
Expression
ตัวอยาง
การหาพืน
้ ทีข
่ องวงกลมรัศมี 4
่
public class HelloWorld {
public static void main(String[] args) {
double r = 4;
double pi = 3.14159;
double area = pi * r * r;
System.out.println("พืน
้ ทีว่ งกลมรัศมี "+ r +" = " +
area);
}
}
ไดผลลั
พธเป็
้
์ น
50.26544
13
พืน
้ ทีว่ งกลมรัศมี 4.0 =
Type Conversion
int a = 1, b = 2, c ;
double d = 2.6 ;
double x = 7 ;
c = (int)d ;
ผลลัพธ ์
2
d = (double)a;
”
1.0
d = (double)( a / b );
”
0
14
Constant
การกาหนดคาคงที
ใ่ ห้กับตัวแปรสามารถทาไดโดย
่
้
เพิม
่ คาวา่ “final” เขาไป
้
เช่น
final float TAX_RATE = 0.0725f ;
หากตองการให
้
้ตัวแปรหรือเมธอดใดๆ ถูก
เรียกใช้ไดจากทุ
กที่ หรือทุก class สามารถทา
้
ไดโดยเพิ
ม
่ คาวา่ “static”
้
เช่น static final float TAX_RATE = 0.0725f ;
15
Data input (Package java.io)
แบงออกเป็
น 2 วิธี คือ
่
- การรับขอมู
้ ลโดยใช้เมธอด read() เป็ นการรับที
ละตัวอักษรแบบ char
ch = (char)System.in.read() ;
- การใช้ BufferedReader รวมกั
บ
่
InputStreamReader โดยใช้เมธอด readLine() รับ
ขอมู
้ ลแบบ String ทางแป้นพิมพครั
์ ง้ ละหลายตัวอักษร
InputStreamReader reader = new
InputStreamReader(System.in);
16
การใช้ read()
import java.io.* ;
class Read1{
public static void main (String
args[])throws IOException {
char ch;
System.out.print(“Input one
character : ”);
ch = (char)System.in.read();
System.out.println(“Your input : ” +
ch );
17
}
การใช้ BufferedReader รวมกั
บ
่
InputStreamReader
import java.io.*;
class Read2 {
public static void main(String arge[]) throws
IOException{
InputStreamReader reader = new
InputStreamReader(System.in);
BufferedReader stdin = new
BufferedReader(reader);
String input = “”;
System.out.println(“Please input any character :
”);
input = stdin.readLine();
18
System.out.println(“Your input :” + input);
Data input (Package java.util)
เป็ นการรับขอมู
เลยด
วยคลาส
Scanner
้ ลทีเ่ ป็ นตัวเลขและนาไปคานวณตอได
่
้
้
โดยใช้เมธอด nextInt()
import java.util.*;
public class InputTest1{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println(“Please input number 1”);
int num1 = sc.nextInt();
System.out.println(“Please input number2”);
int num2 = sc.nextInt();
int result = num1 + num2;
System.out.println(“num1 + num2 = ” + result);
}
}
19
Data input (Package java.util)
คลาส Scanner จะไมมี
่ Exception มา
ตรวจสอบความผิดพลาดของขอมู
เมธ
้ ล แตจะมี
่
อด
hasNext() ไวตรวจสอบเงื
อ
่ นไขแบบ
้
boolean
NextLine() ไวเลื
่ นไปทีบ
่ รรทัดถัดไป
้ อ
มาช่วยในการตรวจสอบ
20
Data input & output (Swing)
Swing ถือ package หนึ่งใน Java ทีม
่ ก
ี าร
ทางานของขอมู
้ ลรับเขาและการแสดงผลใน
้
รูปแบบกราฟิ ก เรียกใช้ดวยค
าสั่ ง
้
Import javax.swing.* ;
21
JOptionPane
คลาส JOptionPane มีเมธอดหลักอยู่ 2 เมธอด
คือ
- showInputDialog() คือ เมธอดสาหรับสราง
้
จอภาพเพือ
่ ให้ user ป้อนขอมู
้ ล ซึง่ เมธอดจะรับ
ขอมู
่ ยูในรู
ปของ String
้ ลทีอ
่
String in
=JOptionPane.showInputDialog(“input”);
22
- showMessageDialog() คือ เมธอดทีใ่ ช้
Data input & output (Swing)
ตัวอยางการแสดงผลแบบ
GUI
่
import javax.swing.* ;
Class TestSwing{
public static void main(String args[]){
JOptionPane.showMessageDialog(null,
“Welcom\nto\nJava\nProgramming!”);
System.exit(0);
}
}
23
ชนิดของจอภาพทีใ่ ช้แสดงใน
showMessageDialog()
Message Dialog Type
การทางาน
JOptionPane.ERROR_ME แสดงจอภาพให้ทราบวามี
่ Error
SSAGE
เกิดขึน
้
JOptionPane.INFORMATI
ON_MESSAGE
แสดงจอภาพเพือ
่ แสดงผลลัพธ ์
(Default)
JOptionPane.WARNING_
MESSAGE
แสดงจอภาพเพือ
่ เตือน
JOptionPane.QUESTION_
แสดงจอภาพเพือ
่ ถาม
MESSAGE
24
ตัวอยาง
การหาผลรวมของเลข 2
่
จานวน
Import javax.swing.JOptionPane
class Addition{
public static void main(String args[]){
String firstNum, secondNum;
int num1, num2, sum;
firstNum=JOptionPane.showInputDialog(“Enter first integer”);
secondNum=JOptionPane.showInputDialog(“Enter second integer”);
num1=Integer.parseInt(firstNum);
num2=Integer.parseInt(secondNum);
sum=num1 + num2;
JOptionPane.showMessageDialog(null, “The sum is” + sum, “Result”,
ptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}
25
Lab 3
ให้เขียนโปรแกรมคานวณจานวนเงินตอเดื
่ อนในการ
ผอนรถ
Toyota new Vios
่
โดยมีเงือ
่ นไขคือ
- ราคารถ 559,000 บาท
- user สามารถกาหนดเอง ตองการดาวน
กี
้
์ ่
เปอรเซ็
์ นตก็
์ ได ้
- ทีเ่ หลือผอนโดยให
่
้ user กรอก จานวน
เดือนทีต
่ องการผ
อน
เช่น 12 24 36 48 60 72
้
่
26 อ 84 เดือน
หรื
Lab 3
ตัวอยางผลลั
พธ ์
่
เปอรเซ็
่ องการดาวน
์ นตที
์ ต
้
์ : 25
จานวนเดือนทีต
่ องการผ
อน
: 48
้
่
คุณตองผ
อนช
าระเป็ นเงิน
้
่
บาทตอเดื
่ อน
27
8734.38