พื้นฐานโปรแกรมภาษาจาวา (overview of java programming...

96
LOGO พพพพพพพ พพพพพพพพพพพ พพพพ (Overview of Java Programming Language) Nerissa Onkhum 15/06/22 1

Upload: kim

Post on 11-Feb-2016

63 views

Category:

Documents


1 download

DESCRIPTION

พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language). Nerissa Onkhum. วัตถุประสงค์. แนะนำสัญลักษณ์และคำต่าง ๆ ที่ใช้ในภาษาจาวา แนะนำข้อมูลค่าคงที่และชนิดข้อมูลแบบพื้นฐานที่ใช้ในภาษาจาวา แนะนำการประกาศและคำสั่งกำหนดค่าตัวแปร แนะนำตัวดำเนินการประเภทต่าง ๆ - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

LOGO

พนฐานโปรแกรมภาษาจาวา

(Overview of Java Programming

Language)

Nerissa Onkhum22/04/23 1

Page 2: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

วตถประสงค แนะนำาสญลกษณและคำาตาง ๆ ทใชในภาษาจาวา แนะนำาขอมลคาคงทและชนดขอมลแบบพนฐานทใช

ในภาษาจาวา แนะนำาการประกาศและคำาสงกำาหนดคาตวแปร แนะนำาตวดำาเนนการประเภทตาง ๆ อธบายการแปลงชนดขอมล แนะนำาชนดขอมลแบบอางอง แนะนำาคำาสงทใชในการรบขอมลและคำาสงทใชในการ

แสดงผล

Page 3: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ไวยากรณภาษาจาวา(Java Syntax)

คำ�หรอขอคว�มทส�ม�รถเขยนในโปรแกรมภ�ษ�จ�ว�จะตอง เปนคำ�

หรอขอคว�มในรปแบบใดรปแบบหนงของประเภทต�งๆเหล�น คอมเมนต (Comment) Identifier คยเวรด (Keywords) สญลกษณแยกคำ� (Separators) ชองว�ง (White space) ขอมลค�คงท (Literals)

Page 4: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คอมเมนต (Comment)

คอมเมนตคอขอคว�มทแทรกอยใน โปรแกรม

คอมเมนตเขยนไวเพอ อธบ�ยโปรแกรม ใหผอ�นเข�ใจโปรแกรมง�ยยงขน ชวยทำ�ใหก�รแกไขและปรบปรงโปรแกรม

เปนไปไดง�ยขน

Page 5: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คอมเมนต (Comment)

คอมเมนตในภาษาจาวาแบงออกเปน 3ประเภท ดงน

1. คอมเมนตแบบบรรทดเดยว (One line comment)

- ใชเครองหม�ย // - โดยขอคว�มทอยหลงเครองหม�ยน

ไปจนสดบรรทดนน จะกล�ยเปนคอมเมนต เชน

// This is one line comment

Page 6: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คอมเมนต (Comment)

2. คอมเมนตแบบหลายบรรทด (many line comment)

- ใชเครองหม�ย */ รวมกบ */- โดยใสเครองหม�ย * ไวหน�ขอคว�มท

ตองก�รใหเปน คอมเมนตและใสเครองหม�ย * ไวหลงขอคว�มทตองก�รใหเปนคอมเมนต เชน /*This is

may linecomment*/

Page 7: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คอมเมนต (Comment)

3. คอมเมนตสำาหรบสรางเอกสารประกอบโปรแกรม (documentation comment)

- ใชเครองหม�ย ** รวมกบ */- คอมเมนตสำ�หรบขอคว�มทตองก�รสร�ง

เปนไฟลเอกส�ร ทเปนไฟลประเภท HTML

Page 8: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรม/* This program is to show how to write comments */public class ShowComments {

// Main methodpublic static void main(String args[]) {

/** This is a comment for documentation */ System.out.println("Document");

}}

Page 9: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

Identifieridentifier คอชอทตงขนในภ�ษ�จ�ว� ซงอ�จเปนชอของคล�ส

ชอของตวแปร ชอของเมธอด ชอของแพกเกจ หรอชอของอนเตอรเฟส

identifier จะตองเปนไปต�มกฎก�รตงชอดงน identifier จะตองขนตนดวยอกขระ A-Z, a-z, _ หรอ $

เท�นน identifier ทประกอบไปดวยตวอกขระม�กกว�หนงตว ตวอกขระ

หลงจ�กตวแรกนนจะตองเปนตวอกขระข�งตน หรอเปนตวเลข 0 ถง 9 เท�นน

identifier จะตองไมตรงกบคยเวรด และไมประกอบดวยชองว�ง

Page 10: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

Identifier identifier ในภ�ษ�จ�ว�เปน case sensitive

case sensitive หม�ยถง ตวอกษรตวใหญกบตวอกษรเลกถอว�เปนคนละตวกน เชน •hello•Hello•hELLo

Page 11: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางของIdentifier

ถกตอง MyVariable _MyVariable $x This_is_also_a_variable

ไมถกตอง My Variable 9pns a+c Hello'World public

Page 12: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

หลกการตงชอทปฏบตกนโดยทวไป

การตงชอของคลาส จะขนตนดวยตวอกษรพมพใหญแลวต�มดวยตวอกษร

พมพเลกหรอตวเลข โดยจะใชตวอกษรพมพใหญเฉพ�ะ อกษรนำ�ของแตละคำ� ทต�มม�ในชอ

ควรเปนคำ�น�ม ตวอย�งเชน

•Sample•HelloWorld •Student •GraduateStudent

Page 13: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

หลกการตงชอทปฏบตกนโดยทวไป

การตงชอของตวแปร จะขนตนดวยตวอกษรพมพเลก โดยจะใชตวอกษรพมพ

ใหญ เฉพ�ะอกษรนำ�ของแตละคำ�ทต�มม�ในชอ ควรเปนคำ�น�มหรอเปนชอสนๆ ตวอย�งเชน

•x• i• name•id •gpa

Page 14: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

หลกการตงชอทปฏบตกนโดยทวไป

การตงชอเมธอด จะใชหลกก�รเดยวกบก�รตงชอตวแปร แตควรเปนคำ�กรย� ตวอย�งเชน getName, setName หรอ showDetails

เปนตนการตงชอคาคงท

จะใชตวอกษรพมพใหญทงหมด และจะแยกคำ�โดยใช เครองหม�ย _ (underscore)

ควรเปนคำ�น�ม ตวอย�งเชน MIN_GPA เปนตน

Page 15: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คยเวรด คยเวรดคอชอทมคว�มหม�ยพเศษในภ�ษ�จ�ว� คยเวรดทกตวจะเปนตวอกษรตวพมพเลก คยเวรด goto และ const

เปนคยเวรดทไมไดตรงกบคำ�สงใดในภ�ษ�จ�ว� คำ�ว� true และ false

ไมไดเปนคยเวรดในภ�ษ�จ�ว� แตจะเปนขอมลค�คงทชนด ตรรกะ

คำ�ว� null ไมไดเปนคยเวรดในภ�ษ�จ�ว� แตจะเปนขอมลค�คงทของ

ตวแปรทมชนดขอมลเปนประเภทอ�งอง

Page 16: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คยเวรดทใชในภาษาจาวา

Page 17: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สญลกษณแยกคำา

Page 18: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ชองวาง (white space)

โปรแกรมภ�ษ�จ�ว�ส�ม�รถทจะมชองว�งเพอทแยกคำ� ประโยค หรอคำ�สงต�ง ๆ ภ�ยในโปรแกรมได

white space หม�ยถงตวอกษรทไมมรปร�งหน�ต� เปนตวอกษรทมองไมเหน

จ�ว�แบง white space ออกเปน 5 ชนดไดแก Space character คอ ชองว�ง Horizontal tab คอ ตวอกษรแนวนอนแทบ (\t) Form feed คอ ตวอกษรขนหน� ใหม (\f) Carriage return คอ ตวอกษรเลอนเคอรเซอรไปซ�ยสด (\r) linefeed หรอ newline คออกษรขนบรรทดใหม (\n)

Page 19: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ชองวาง (white space)

white space มหน�ทชวยแยกคำ�ใหอ�นง�ยขนwhite space มอยเปนจำ�นวนเท�ไรระหว�งคำ� จะ

ไมสงผลตอก�รตคว�มของคอมไพเลอรหลกการของ white space มอย 2 ขอ คอ

1. หามม white space ระหวางชอเมธอดและเครองหมายวงเลบเปด เชนตวอยางทถก ตวอยางทผด

getSalary(5000);

getSalary (5000);

Page 20: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ชองวาง (white space)

2. ตองใส white space ไวหลง reserved word เสมอ เชนpublic static void

main(String arg[ ])

เพราะ public, static, void ลวนเปน reserved word จงตองม white space ระหวางคำาเหลาน

publicstaticvoidmain(String arg[ ])

เพราะไมม white space ระหวาง reserved word ทำาใหคอมไพเลอรไมสามารถทำางานไดอยางถกตอง

public static void main(String

arg[ ])

การเวนชองวาง (ชองวางเปน white space ประเภท space character) ระวาง reserved word แตละคำามากกวา 1 ชองวางไมถอวาผด เพราะคอมไพเลอรตองการเพยงแคใหเวนวรรคระหวาง reserved word แตจะเวนทชองวางกได

Page 21: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลคาคงท (Literal)

ขอมลคาคงท คอ คำ�ทใชแสดงขอมลทเปน ตวเลข ตวอกขระ ขอคว�ม หรอค�ท�งตรรกะ

ขอมลค�คงทแบงออกเปน 5 ประเภทดงน ตรรกะ (boolean) ตวอกขระ (character) ตวเลขจำ�นวนเตม (integral) ตวเลขทศนยม (floating point) ขอคว�ม (string)

Page 22: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ชนดขอมลแบบพนฐานชนดขอมลในภ�ษ�จ�ว�แบงเปนสองประเภทใหญๆคอ

ชนดขอมลแบบพนฐาน (primitive data type) ชนดขอมลแบบอางอง (reference data type)

ชนดขอมลแบบพนฐ�นแบงออกเปน 4 ประเภทดงน ชนดขอมลตรรกะ (Logical) คอชนด boolean ชนดขอมลอกขระ (Textual) คอชนด char ชนดขอมลตวเลขจำ�นวนเตม (Integral) คอชนด

byte,short,int และ long ชนดขอมลตวเลขทศนยม (Floating point) คอชนด float

และ double

Page 23: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขนาดและชวงคาของชนดขอมลแบบพนฐาน

Page 24: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตรรกะ (Logical)

ขอมลชนดตรรกะ (boolean) มขอมลค�คงทอย 2 ค�คอ

true และ false ตวอย�งเชน คำ�สง

boolean flag = true;

เปนก�รกำ�หนดตวแปรทชอว� flag ใหมชนดขอมล เปน boolean

โดยกำ�หนดใหมค�เปน true

Page 25: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตวอกขระ (Character)

Char เปนชนดขอมลแบบตวอกษร (Character) ซงถกเกบอยในรปของม�ตรฐ�น Unicode ม ขน�ด

16 บตใชสำ�หรบเกบขอมลทมคว�มย�วไมเกน 1 ตวอกษร

เท�นนโดยก�รเขยน Character literals จะตอง

ครอบคลมดวยเครองหม�ย ' ' (Single Quote) โดยจะมค�ตงแต '\u0000' ถง '\uFFFF'

Page 26: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตวอกขระ (Character)

ตวอย�งเชน คำ�สงchar letter = '\u0041';

เปนก�รประก�ศตวแปรทชอว� letter ใหเปนขอมลชนด char โดยมค�เปน \u0041 ซงมค�เท�กบตวอกษร A

ตวอย�งเชน คำ�สงchar letter = 'A';

เปนก�รประก�ศตวแปรทชอว� letter ใหเปนขอมลชนด char โดยมค�เปนตวอกษร A เชนเดยวกบคำ�สงกอนหน�น

Page 27: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

อกขระพเศษทนยมใชทวไป

Page 28: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตวเลขจำานวนเตม

มชนดขอมลพนฐ�น 4 ชนดคอ byte, short, int, long

โดยทวไปขอมลชนดตวเลขจำ�นวนเตมจะถกกำ�หนดใหมชนดขอมลเปน int ขอมลค�คงทส�ม�รถเขยนไดส�มแบบดงน

เลขฐ�นสบคอก�รเขยนเลขจำ�นวนเตมทวไป เชน -121 และ 75362 เปนตน

เลขฐ�นแปดคอก�รเขยนเลขจำ�นวนเตมทขนตนดวยเลข 0 แลวต�มดวย ตวเลขตงแต 0 ถง 7 อ�ทเชน 016 ( มค�เท�กบ 14 ในเลขฐ�นสบ)

เลขฐ�นสบหกคอก�รเขยนเลขจำ�นวนเตมทขนตนดวย 0x หรอ 0X แลวต�มดวยตวเลขตงแต 0 ถง 9 หรอตวอกษร A ถง F อ�ท

เชน 0xA2 ( มค�เท�กบ 162 ในเลขฐ�นสบ)

Page 29: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตวเลขจำานวนเตม

ขอมลค�คงทของเลขจำ�นวนเตมทเปนชนดlong จะมตวอกษร l หรอ L ตอท�ย เชน2l หม�ยถง เลขฐ�นสบทมค�เปน 2 ซง

เปนขอมลชนด long 077L หม�ยถง เลขฐ�นแปดทเปนขอมล

ชนด long0xBAACL หม�ยถง เลขฐ�นสบหกทเปน

ขอมลชนด long

Page 30: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตวเลขทศนยม(floating point)

ขอมลชนดตวเลขทศนยมจะเปนเลขทมเครองหม�ย จดทศนยม เชน

3.14 หรอ 3.0 มชนดขอมลพนฐ�น 2 ชนด คอ double และ floatโดยทวไปขอมลชนดตวเลขทศนยมจะถกกำ�หนดใหมชนด

ขอมลเปน double ส�ม�รถเขยนในรปแบบของเลขยกกำ�ลงสบ (exponential

form) ได โดยใชตวอกษร E หรอ e ระบจำ�นวนท เปนเลขยกกำ�ลงสบ เชน

6.02E23 หรอ 2e-7

Page 31: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอมลชนดตวเลข ทศนยม

ขอมลชนดตวเลขทศนยมทมชนดขอมลเปนfloat จะมตวอกษร F หรอ f ตอท�ย เชน 2.718F หรอ 3.14f

ขอมลชนดตวเลขทศนยมทมชนดขอมลเปนdouble จะมตวอกษร D หรอ d ตอท�ย เชน 2.718D ( โดยทวไปไมจำ�เปนตองใสตวอกษร

D เพร�ะขอมลชนดตวเลขทศนยมจะกำ�หนดให เปน double อยแลว)

Page 32: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวแปร (Variable)ตวแปรคอขอมลทส�ม�รถเปลยนแปลงค�ไดใน

โปรแกรม โดยใชคำ�สงกำ�หนดค�คำ�สงในก�รประก�ศตวแปรของภ�ษ�จ�ว�มรปแบบดงน

dataType [variableName]; ตวอย�งเชน คำ�สง

int amount; double x,y;float price,wholeSalePrice;

Page 33: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คำาสงกำาหนดคา(Assignment Statement)

คำ�สงกำ�หนดค�จะเปนคำ�สงทใชในก�รเปลยนแปลงค�ของตวแปร

คำ�สงกำ�หนดค� (assignment statement) ซงมรปแบบดงน

variableName = expression;ตวอย�งเชน

x = 1;radius = 3.14;c = ‘a’;y = x+4*3;amount = 121+14;

Page 34: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คำาสงประกาศและกำาหนดคาตวแปร

เร�ส�ม�รถทจะประก�ศและกำ�หนดค�เรมตนของตวแปรภ�ยใน คำ�สงเดยวกน โดยมรปแบบคำ�สงดงน

dataType variableName = expression

ตวอยางเชนint amount = 123; float price = 12.0f;double x = 4.0, y = 2.5;

Page 35: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class VariableAssignDemo { public static void main(String args[]) {

int x,y;boolean b1;float z = 3.414f; /* The program will not be

compiled successfully if a character f is missing */

double w;x = 5;y = 4;b1 = (x > y);w = x * 3.2;System.out.println("x = " + x + " y = " + y);System.out.println("b1 = " + b1);System.out.println("z = " + z + " w = " + w);

}}

Page 36: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คาคงทก�รประก�ศค�คงทในภ�ษ�จ�ว�ทำ�ไดโดยก�รใส

คยเวรด final หน�คำ�สงประก�ศช อ โดยมรปแบบดงน

final dataType CONSTANT_NAME = expression;

ตวอย�งเชน คำ�สงfinal int MINIMUM = 4;final double MIN_GPA = 2.00;

Page 37: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class ConstantDemo { public static void main(String args[]) {

final int MAXIMUM = 10;final double MIN_GPA;

System.out.println("Maximum is " + MAXIMUM);MIN_GPA = 2.00;System.out.println("Minimum GPA is " + MIN_GPA);

// MIN_GPA = 3.00; //illegal }}

Page 38: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ขอบเขตของตวแปรและคาคงท

ตวแปรและค�คงทซงประก�ศขนจะส�ม�รถใชง�น ภ�ยในบลอกคำ�สง ({ }) ทประก�ศเท�นน

ภ�ษ�จ�ว�แบงตวแปรและค�คงทเปนสองประเภทคอ ตวแปรหรอค�คงททเปนคณลกษณะของออปเจ

คหรอคณลกษณะของคล�ส ตวแปรหรอค�คงททอยในบลอกของเมธอดทเรยก

ว�ค�คงทภ�ยใน (local constant) หรอตวแปร ภ�ยใน (local variable)

Page 39: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คาเรมตนอตโนมตของตวแปร

ตวแปรทเปนคณลกษณะของออปเจคหรอคณลกษณะของคล�สจะถกกำ�หนดค�เรมตนใหโดยอตโนมต

Page 40: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class VariableScopeDemo { public int i; // object variable

public void method1() {int j = 4; // local variableint k = 2; // another local variable

} public void method2() {

int j = 0; // local variableSystem.out.println(i);

// calling an object variable i// System.out.println(k); // illegal }}

Page 41: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการ(Operator)

นพจนภ�ษ�จ�ว�อ�จจะประกอบดวยขอมลค�คงท ตวแปร หรอค�คงทต�งๆ โดยจะมตวดำ�เนนก�รต�งๆไวเพอ

คำ�นวณห�ผลลพธทเปนชนดขอมลต�งๆ ตวดำ�เนนก�รในภ�ษ�จ�ว�แบงออกเปน 4 ประเภทคอ

ตวดำ�เนนก�รท�งคณตศ�สตร (Arithmetic Operator)

ตวดำ�เนนก�รแบบสมพนธ (Relational Operator) ตวดำ�เนนก�รท�งตรรกศ�สตร (Logical Operator) ตวดำ�เนนก�รแบบบต (Bitwise Operator)

Page 42: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการ(Operator)การดำาเนนการทางคณตศาสตร

ตวอย�งของก�รดำ�เนนก�รท�งคณตศ�สตร เชน

a + b * c นพจน (Expression) คอ ก�รนำ�เอ�โอเปอเรเตอรและโอเปอ

แรนดหล�ย ๆ ตว ม�รวมเข�เปนประโยคเดยวกน ซงจ�กด�นบน จะเรยก a + b * c วา นพจน“ ”

โอเปอเรเตอร (Operator) คอ ตวดำ�เนนก�ร ซงอ�จเปนก�รดำ�เนนก�รท�งคณตศ�สตรหรอท�งตรรกศ�สตรกได ซงจ�กนพจนด�นบน จะเรยก + และ * วา โอเปอเรเตอร“ ”

โอเปอแรนด (Operand) คอ ตวถกดำ�เนนก�ร ซงอ�จเปน literals, ตวแปร หรอนพจนกได ซงจ�กนพจนด�นบน จะเรยก a, b และ c วา โอเปอแรนด“ ”

Page 43: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการทางคณตศาสตร

Page 44: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการทาง คณตศาสตรแบบยอ

Page 45: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการเพมคาและลดคา

ตวดำ�เนนก�รเพอบวกค�ทละ 1 หรอลดค�ทละ 1 เครองหม�ย ++ หรอ --ตวอย�ง

x++ คอ x = x+1 ++x คอ x = x+1 x-- คอ x = x-1 --x คอ x = x-1

ถ�ว�งเครองหม�ยไวข�งหน� โปรแกรมจะคำ�นวณค�กอนแลวจงทำ�คำ�สง

ถ�ว�งเครองหม�ยไวข�งหลง โปรแกรมจะคำ�นวณค�หลงจ�กทำ�คำ�สง

Page 46: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการเพมคาและลดคาx++ มคว�มหม�ยเหมอนกบ ++x คอ

เปนก�รเพมค�ของ x ขน 1 แตเมอนำ�ไปใชรวมกบนพจนอน ๆ ลำ�ดบก�รทำ�ง�นของ x++ และ ++x จะแตกต�งกน

y = x++;z = ++x;

ลำาดบการทำางานจะเปน ดงนy = x++ => 1. y = x จะเหนวาทง x++ และ ++x ตางกทำา x = x + 1 2. x = x + 1; เหมอนกน แตลำาดบการทำางานตางกน กลาวคอ

z = ++x => 1. x = x + 1; ++x จะทำาการเพมคาของ x ขน 1 กอนทจะนำาคาของ x 2. z = x ไปใชในนพจน แต x++ จะนำาคาของ x ไปใชในนพจนกอนแลวคอยเพมคาของ x ขน 1

Page 47: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class IncrementDemo { public static void main(String args[]) {

int x; int y; x = 5;

y = x++; System.out.println("x = "+x" y = "+y);

y = ++x; System.out.println("x = "+x" y = "+y);

}}

ผลลพธทไดจากการรนโปรแกรมx = 6 y = 5x = 7 y = 7

Page 48: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการแบบสมพนธ

Page 49: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class BooleanDemo { public static void main(String args[]) {

int x = 5; int y = 4;

boolean b1; b1 = (x!=y);

System.out.println("x not equal to y is "+b1); System.out.println("y less than 0 is "+(y<0));

} }

Page 50: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการทางตรรกศาสตร

Page 51: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางการใชตวดำาเนนการทางตรรกศาสตร

นพจน ผลลพธ

(7>6) && (2<1) false

(7>6) || (2<1) true

!(7>6) false

Page 52: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ผลลพธของการกลบคาทางตรรกะ

Page 53: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ผลลพธของการ AND คาทางตรรกะ

Page 54: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ผลลพธของการ OR คาทางตรรกะ

Page 55: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ผลลพธของ Exculsive OR คาทางตรรกะ

Page 56: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ลำาดบความสำาคญของตวดำาเนนการ

Page 57: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ลำาดบความสำาคญของตว ดำาเนนการ

Page 58: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยาง คำ�สง x = 2+3*4-(7+2); คำ�นวณห�ผลลพธต�ม

ลำ�ดบดงน คำ�นวณห�ผลลพธค� 7+2 ทำ�ใหได

x = 2+3*4-9 คำ�นวณห�ผลลพธค� 3*4 ทำ�ใหได

x = 2+12-9 คำ�นวณห�ผลลพธค� 2+12 ทำ�ใหได

x = 14-9 คำ�นวณห�ผลลพธค� 14-5 ทำ�ใหได

x = 5

Page 59: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

22/04/23 59

ใชวงเลบเพอจดกลมการคำานวณ

Page 60: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

22/04/23 60

เปรยบเทยบผลการคำานวณ

int a =2 + (3 *4);

int a = (2 + 3) * 4;

Page 61: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการแบบบต(Bitwise Operator)โอเปอเรเตอรระดบบต หรอ Bitwise Operator

เปนโอเปอเรเตอรทใชดำ�เนนก�รกบขอมลในลกษณะบตตอบต ซงถอว�เปนก�รดำ�เนนก�รทคอนข�งละเอยดม�ก เนองจ�กบต (bit ยอม�จ�ก binary digit) คอ หนวยขอมลทเลกทสดของคอมพวเตอรโอเปอเร

เตอรชอ คำาอธบาย

& Bitwise And

ถ�บตทนำ�ม�ดำ�เนนก�รกน มค�เปน 1 ทงค ผลของก�รดำ�เนนก�รจะเปน 1 สวนกรณอน ๆ ทเหลอจะใหผลของก�รดำ�เนนก�รเปน 0

| Bitwise OR

ถ�บตทนำ�ม�ดำ�เนนก�รกน มค�เปน 0 ทงค ผลของก�รดำ�เนนก�รจะเปน 0 สวนกรณอน ๆ ทเหลอจะใหผลของก�รดำ�เนนก�รเปน 1

^ Bitwise XOR

Exclusive OR

ถ�บตทนำ�ม�ดำ�เนนก�รกนมค�เหมอนกน ผลของก�รดำ�เนนก�รจะเปน 0 แตถ�บตทนำ�ม�ดำ�เนนก�รมค�ต�งกน ผลจะเปน 1

“เหมอน 0 ตาง 1”

~ Bitwise Not

โอเปอเรเตอรนตองก�รโอเปอแรนดเพยงตวเดยว (เปน unary operator) โดยจะใหผลเปนบตตรงกนข�มกบค�ของแตละบตของโอเปอแรนดนน (ถ�บต 0 จะใหผลเปนบต 1 แตถ�บต 1 จะใหผลเปนบต 0 )

Page 62: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการแบบบต(Bitwise Operator)

โอเปอเรเตอร

ชอ คำาอธบาย

>> Right Shift

เลอนบตไปท�งขว�เปนจำ�นวนครงเท�กบค�ของตวถกดำ�เนนก�รท�งขว�มอโดยห�กขอมลเปนค�ลบ จะเตมบต 1 เข�ม�ท�งซ�ยเท�กบจำ�นวนบตทเลอน แตห�กขอมลเปนค�บวก จะเตม 0 เข�ม�ท�งซ�ยเท�กบจำ�นวนบตทเลอน

<< Left Shift

เลอนบตไปท�งซ�ยเปนจำ�นวนครงเท�กบค�ของตวถกดำ�เนนก�รท�งขว�มอโดยจะเตม 0 เข�ม�ท�งขว�เท�กบจำ�นวนบตทเลอน ไมว�ขอมลจะเปนค�บวกหรอค�ลบกต�ม

>>> Unsigned

Right Shift

เลอนบตไปท�งขว�เปนจำ�นวนครงเท�กบค�ของตวถกดำ�เนนก�รท�งขว�มอ โอเปอเรเตอรนจะทำ�ง�นกบขอมลโดยไมคดเครองหม�ย (unsign) คอ ไมว�ขอมลจะเปนค�ลบหรอค�บวก จะเตม 0 เข�ม�ท�งซ�ยเท�กบจำ�นวนบต ทเลอนเสมอ

Page 63: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการแบบบต(Bitwise Operator)

bit1>>3bit1bit1

bit1

bit1

0000 0000 0000 0000 0000 0000 0100 0010

0000 0000 0000 0000 0000 0000 0100 0010

0000000 0000 0000 0000 0000 0000 0100 0010

0000 0000 0000 0000 0000 0000 0000 1000

Page 64: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการแบบบต(Bitwise Operator)bit3 = - 4

bit3>>3bit3bit3

bit3

bit3

1111 1111 1111 1111 1111 1111 1110 0010

1111 1111 1111 1111 1111 1111 1110 0010

1111111 1111 1111 1111 1111 1111 1110 0010

1111 1111 1111 1111 1111 1111 1111 1100

Page 65: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

การแปลงชนดขอมล ในกรณทตวถกดำ�เนนก�รทงสองมชนดขอมลทต�งกน ภ�ษ�จ�ว�จะม

หลกก�รแปลงชนดขอมล (type conversion) ดงน ถ�ตวถกดำ�เนนก�รตวหนงมชนดขอมลเปน double ตวถกดำ�เนน

ก�รอกตวหนงจะถกแปลงใหมชนดขอมลเปน double โดยอตโนมต

ถ�ตวถกดำ�เนนก�รทงสองไมไดมชนดขอมลเปน double แตมตว ถกดำ�เนนก�รตวหนงทมชนดขอมลเปน float ตวถกดำ�เนนก�รอก

ตวหนงจะถกแปลงใหมชนดขอมลเปน float โดยอตโนมต ถ�ตวถกดำ�เนนก�รทงสองไมไดมชนดขอมลเปน double หรอ

float แตมตวถกดำ�เนนก�รตวหนงทมชนดขอมลเปน long ตว ถกดำ�เนนก�รอกตวหนงจะถกแปลงใหมชนดขอมลเปน long โดย

อตโนมต

Page 66: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

การแปลงชนดขอมล กรณอนๆ ตวถกดำ�เนนก�รทงสองจะแปลงใหมชนด

ขอมลเปน int ตวอย�ง

byte b1, b2, b3;b1 = 2;b2 = 4;b3 = b1+b2; //illegal คำ�สงกำ�หนดค� b3 ไมถกตองเนองจ�ก b1+b2 จะ

ใหค�ขอมลทมชนดขอมลเปน int

Page 67: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

การแปลงชนดขอมลก�รแปลงชนดขอมลมสองรปแบบคอ

ก�รแปลงขอมลทกว�งขน (widening conversion) คอก�รแปลงจ�กชนดขอมลทมขน�ดเลกกว�ไปเปนชนดขอมลทมขน�ดใหญกว�

ก�รแปลงขอมลทแคบลง (narrowing conversion) คอก�รแปลงจ�กชนดขอมลทม

ขน�ดใหญกว�ไปเปนชนดขอมลทมขน�ดเลกลง ซงอ�จมผลใหเสยคว�มละเอยดของขอมลบ�งสวนไป

Page 68: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

หลกการการแปลงชนดขอมล

ชนดขอมลตวเลขจำ�นวนเตมส�ม�รถแปลงใหเปนชนดขอมลตวเลขทศนยมได

ชนดขอมล float ส�ม�รถแปลงใหเปนชนดขอมล double ไดชนดขอมลตวเลขจำ�นวนเตมมขน�ดเรยงกนจ�กนอยไปม�ก

ดงนbyte short int long

ชนดขอมล char ส�ม�รถแปลงใหเปนชนดขอมล int ได ชนดขอมล boolean จะไมมคว�มสมพนธกบชนดขอมลแบบ

พนฐ�นอนๆ

Page 69: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางของการแปลงชนดขอมล ภ�ษ�จ�ว�จะปรบชนดขอมลใหอตโนมต ในกรณตอไปน

กำ�หนดค�ชนดขอมลทเลกกว�ใหกบตวแปรชนดขอมลทใหญกว�อ�ทเชนint i = 4;long l = i;

นพจน i จะถกปรบชนดขอมลจ�ก int ใหเปน long โดยอตโนมตกำ�หนดค�ชนดขอมลจำ�นวนเตมใหกบจำ�นวนเลขทศนยมอ�ทเชน

double x = 3; นพจน 3 จะถกปรบชนดขอมลจ�ก int ใหเปน double โดย

อตโนมต

Page 70: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางของการแปลงชนดขอมล

ตวอย�งทไมถกตองint amount = 123L; //illegal

float f = 4.0; //illegal

Page 71: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรม public class PromotionDemo {

public static void main(String args[]) { int i;

long l; float fl = 4.2f; i = 4; l = i; fl = i; double x = fl; fl = 4.2; //illegal}

}

Page 72: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

Typecasting เร�ส�ม�รถแปลงชนดขอมลขน�ดใหญ ให

เปนชนดขอมลทเลกกว�ไดโดยวธก�รทเรยก ว� typecasting

รปแบบคำ�สง(target_type)expression;

จะทำ�ใหโปรแกรมส�ม�รถคอมไพลผ�นไดบ�งกรณอ�จทำ�ใหขอมลบ�งสวนสญห�ยไป

Page 73: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางของTypecasting ตวอย�ง

int amount = (int) 3.0; แปลงนพจนทมค� 3.0 ขอมลชนด double ใหเปนชนดint

ตวอย�งทมก�รตดขอมลออกint x;double y = 1.25;x = (int) y;

Page 74: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรม public class TypecastingDemo {

public static void main(String args[]) { byte b1 = 4; byte b2 = 3; byte b3; b3 = (byte)(b1+b2); float fl; fl = (float)3.2;}

}

Page 75: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ชนดขอมลแบบอางอง ชนดขอมลแบบอ�งองคอออปเจคในภ�ษ�จ�ว� โดยแบงออก

เปนสองแบบคอ ชนดขอมลทเปนคล�ส ชนดขอมลทเปนอะเรย

ชนดขอมลแบบอ�งองจะมวธก�รเกบขอมลในหนวยคว�มจำ�ท แตกต�งจ�กก�รเกบขอมลของชนดขอมลแบบพนฐ�นอ�ทเชน

คำ�สง

int x = 7;String s = new String("Thana");

Page 76: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

การประกาศตวแปรและจองเนอทในหนวยความจำา

อ�ทเชนคำ�สง int x;

Date d; d = new Date(16,8,2002);

Page 77: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คลาส StringString เปนคล�สทกำ�หนดไวใน Java API ตวแปรทมชนดขอมลเปน

String กคอออปเจคชนดหนง ซง String มขอแตกต�งจ�กออปเจคทวๆไปดงน String เปนออปเจคทมค�คงทขอมลซงกคอขอคว�มใดๆ ทอย

ภ�ยในเครองหม�ย double quote (“ ”) ตวอย�งเชน“This is a java course”

String เปนออปเจคทส�ม�รถสร�งหรอกำ�หนดค�ไดโดยไมจำ�เปน ตองใชคำ�สง new ตวอย�งเชน เร�ส�ม�รถใชคำ�สง

String s = “Thana”; โดยไมจำ�เปนทจะตองใชคำ�สง

String s = new String(“Thana”);

Page 78: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class StringDemo { public static void main(Stirng args[]){

String s1 = "Thana"; String s2 = "Thana"; String s3 = new String("Thana");}

}

Page 79: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คำาอธบายโปรแกรม กรณทไมใชคำ�สง new ภ�ษ�จ�ว�จะ

พจ�รณ�จ�ก String Pool ว�มขอคว�มเดมอยหรอไม

กรณทใชคำ�สง new ภ�ษ�จ�ว�จะสร�งขอคว�มใหมและจองเนอทในหนวยคว�มจำ�

เสมอ

Page 80: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

String เปนออปเจคท เปลยนคาไมได

ตวอย�งเชน คำ�สงString s1;s1 = “Thanachart";s1 = “Somchai";

Page 81: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวดำาเนนการทใชกบ ขอมลชนด String

String เปนออปเจคทมตวดำ�เนนก�รทใชในก�รเชอมขอคว�ม สองขอคว�มเข�ดวยกน โดยใชเครองหม�ย + อ�ทเชน

String s1 = “Hello” + “ World”; ตวดำ�เนนก�รในก�รเชอมขอคว�มส�ม�รถใชเชอมขอมลชนด

String กบตวถกดำ�เนนก�รทเปนชนดขอมลอนๆ ภ�ษ�จ�ว� จะแปลงชนดขอมลดงกล�วใหเปนชนด String โดยอตโนมต

อ�ทเชน คำ�สงString s1 = “This";String s2 = s1 + “ is a test ”;String s3 = s1+4;

Page 82: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

คำาสงอนพตและเอาทพต

ออปเจค System.in เปนออปเจคทมเมธอดสำ�หรบ ก�รอ�นขอมลท�งอปกรณอนพตม�ตรฐ�น ซงโดยทวไป

กคอคยบอรด ออปเจค System.out เปนออปเจคทมเมธอดสำ�หรบ

ก�รแสดงขอมลออกท�งอปกรณเอ�ทพตม�ตรฐ�นซงโดยทวไปคอจอภ�พ

ออปเจค System.err เปนออปเจคทมเมธอดสำ�หรบ ก�รแสดงขอผดพล�ด (error) ออกท�งอปกรณทใชใน ก�รแสดงขอผดพล�ด ซงโดยทวไปจะกำ�หนดเปนจอภ�พ

Page 83: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

System.out.println

ออปเจค System.out หม�ยถงออปเจคท ชอ out ซงเปนคณลกษณะของคล�สทชอ

System ออปเจคทชอ out เปนออปเจคของคล�สPrintStream ทมเมธอดทนยมใชทวไปคอprint(String s)และ println(String s)

Page 84: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

ตวอยางโปรแกรมpublic class ShowPrint { public static void main(String args[]) {

int x = 3, y = 4, z = 5;System.out.print("x = "+x);System.out.println(" y = "+y);System.out.println("z = "+z);

}}

ผลลพธทไดจากการรนโปรแกรมx = 3 y = 4z = 5

Page 85: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

การรบขอมลเขามาทางCommand Line

เมธอดทชอ main() จะม argument เปน String args[] ซง ส�ม�รถทจะรบ argument ทสงผ�นม�จ�ก command line ได

ตวอย�งเชนpublic class Sample { public static void main(String args[]) {

System.out.println(“My name is ” + args[0] + “ and I am a ” + args[1]);

} } ถ�ปอนอนพตตรง command line เปน java Sample

Tommy boy จะไดผลลพธคอ My name is Tommy and I am a boy

Page 86: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สรปเนอหาของบท คอมเมนต คอขอคว�มทแทรกอยภ�ยในโปรแกรมซงคอมไพเลอรจะ

ไมแปลขอคว�มนใหเปนสวนหนงของโปรแกรมidentifier คอชอทตงขนในภ�ษ�จ�ว� ซงอ�จเปนชอของคล�ส ชอ

ของ ตวแปร ชอของเมธอด หรอชอของค�คงท ซงจะตองเปนไปต�มกฎก�รตงชอ

ก�รตงชอในภ�ษ�จ�ว� สำ�หรบคล�ส นยมขนตนดวยตวอกษรพมพใหญ สำ�หรบเมธอดและตวแปร นยมขนตนดวยตวอกษรพมพเลก ถ�ชอทตงขนมม�กกว� 1 คำ� นยมขนตนคำ�ใหมดวยตวอกษร

พมพใหญ ตองไมตรงกบคยเวรด

Page 87: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สรปเนอหาของบท คยเวรดคอชอทมคว�มหม�ยพเศษในภ�ษ�จ�ว� คอมไพเลอ

รของภ�ษ� จ�ว�จะเข�ใจคว�มหม�ยและคำ�สงทจะตองดำ�เนนก�รสำ�หรบคยเวรดแตละตว

ขอมลค�คงทคอคำ�ทใชแสดงขอมลทเปนตวเลข ตวอกขระ ขอคว�ม หรอค�ท�งตรรกะ

ชนดขอมลในภ�ษ�จ�ว�แบงเปนสองประเภทคอ ชนดขอมลแบบพนฐ�นและชนดขอมลแบบอ�งอง

ชนดขอมลแบบพนฐ�นทใชในภ�ษ�จ�ว�มทงหมด 8 ชนด คอ char,byte, short,int,long,float,double และ

boolean

Page 88: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สรปเนอหาของบทขอมลทเกบอยในโปรแกรมแบงเปนสองประเภทคอตวแปรและค�

คงท ซงตวแปรคอขอมลทส�ม�รถเปลยนแปลงค�ไดในโปรแกรม โดยใชคำ�สงกำ�หนดค� สวนค�คงทคอขอมลทกำ�หนดค�ไดเพยง

ครงเดยวและไมส�ม�รถเปลยนแปลงค�ไดในโปรแกรมตวแปรทมก�รประก�ศชนดขอมลแลวส�ม�รถทจะกำ�หนดหรอ

เปลยนแปลงค�ไดโดยใชคำ�สงกำ�หนดค� ก�รประก�ศค�คงทในภ�ษ�จ�ว�ทำ�ไดโดยก�รใสคยเวรด final

หน�คำ�สงประก�ศชอ ค�คงทหรอตวแปรทอยภ�ยในบลอกของเมธอด จะมขอบเขตก�ร

ใชง�นอยภ�ยในบลอกเท�นน

Page 89: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สรปเนอหาของบทตวดำ�เนนก�รทใชในภ�ษ�จ�ว�มทงหมด 4 แบบคอ

ตวดำ�เนนก�รท�งคณตศ�สตร - - *: +, , , /, %, +=, =, *=, /=, %=, ++ และ --

ตวดำ�เนนก�รท�งตรรกศ�สตร : <, <=, >, >=, ==และ !=

ตวดำ�เนนก�รแบบสมพนธ : !, &&, &, || และ | ตวดำ�เนนก�รแบบบต

กรณทนพจนใดๆมตวดำ�เนนก�รม�กกว�หนงตว ภ�ษ�จ�ว�จะจดลำ�ดบคว�มสำ�คญของตวดำ�เนนก�ร เพอคำ�นวณห�ผลลพธต�มลำ�ดบคว�ม สำ�คญของตวดำ�เนนก�ร

Page 90: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สรปเนอหาของบท คว�มแตกต�งระหว�งก�รแปลงขอมลโดยอตโนมตและ

Typecasting ก�รแปลงขอมลโดยอตโนมตคอ ก�รทชนดขอมลทมขน�ดเลกกว�

ถกแปลงใหเปนชนดขอมลทมขน�ดใหญกว�โดยอตโนมต Typecasting คอก�รทจะตองระบชนดขอมลทมขน�ดใหญกว�ให

กบนพจนทมชนดขอมลขน�ดเลกกว� ชนดขอมลแบบอ�งองซงกคอออปเจคในภ�ษ�จ�ว� โดยแบงออกเปน

สองแบบคอชนดขอมลทเปนคล�ส และชนดขอมลทเปนอะเรย ขอมลทเกบในหนวยคว�มจำ�ของชนดขอมลแบบอ�งอง จะเปนตำ�แหนง

อ�งองทเกบขอมลในหนวยคว�มจำ� แตในกรณของชนดขอมลแบบพน ฐ�น ขอมลทเกบในหนวยคว�มจำ�จะเปนค�ของขอมลจรงๆ

Page 91: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

สรปเนอหาของบทString เปนชนดขอมลแบบคล�ส ไมใชชนด

ขอมลแบบพนฐ�นคำ�สงทใชในก�รแสดงผลลพธของขอมลในภ�ษ�

จ�ว�คอคำ�สง System.out.println() เมธอดทชอ main() จะม argument เปน

String args[] ซงส�ม�รถทจะรบ argument ทสงผ�นม�จ�ก command line ได

Page 92: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

22/04/23 92

แบบทดสอบท 31. จงพจ�รณ�คอมเมนตดงตอไปนว�ถกหรอผดอย�งไร

จงใหเหตผล 11. // /* comment1 */

1.2 /* comment1 /* comment2*/*/1.3 /*comment1 comment2 comment3*/1.4 /* comment1 *//* comment2 *//* comment3 comment4*/1.5 /**//*comment1*//**/

Page 93: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

22/04/23 93

แบบทดสอบท 32. จงพจ�รณ�ชอตอไปนว�เปนชอทตงขนถกตองต�มกฎ

ก�รตงชอ ของภ�ษ�จ�ว�หรอไมอย�งไร

21. TRUE 2.6 $var#2.2 me&you 2.7 _1_2_32.3 1_2_3var 2.8 v1var v22.4 $_test 2.9 _ native _2.5 volaile

Page 94: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

22/04/23 94

แบบทดสอบท 3 3. จงเขยนโปรแกรมทใชเครองหม�ยตอไปนครบทก

เครองหม�ย +, += , ++ , - , -= , * , % (บนทกไฟลชอ Operator.java) 4. จงเขยนโปรแกรมคำ�นวณค�ตอไปน 2X3 + 4X2 + 5X + 1 โดยกำ�หนดค� X = 5 (Expression.java) 5. จงเขยนโปรแกรมห�ค�เฉลยของ 1420212732, , , , (Average.java)

Page 95: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

22/04/23 95

แบบทดสอบท 3 6. สเหลยมค�งหมมด�นคขน�นย�ว 10

และ 20 และเสนคขน�นทงสองห�งกนเท�กบ 6 จงเขยนโปรแกรมเพอห�พนทของสเหลยมค�งหมดงกล�ว โดยสตรก�รห�พนทสเหลยมค�งหมมดงนพนทสเหลยมคางหม = 12/ คณ ผลบวกดานคขนาน คณ ระยะหางระหวางเสนคขนาน (Trapezium.java)

Page 96: พื้นฐานโปรแกรมภาษาจาวา (Overview of Java Programming Language)

LOGO

22/04/23 96