สารบัญ

 

  พร้อมแล้วเริ่ม                                             1

ซอฟต์แวร์ช่วยพัฒนาโปรแกรม..................................................................................................... 1

โปรแกรมแรก................................................................................................................................... 2

องค์ประกอบของโปรแกรม............................................................................................................ 6

ตัวแปลโปรแกรม............................................................................................................................. 7

ข้อผิดพลาดของโปรแกรม.............................................................................................................. 8

โปรแกรมสวยอ่านง่าย.................................................................................................................. 10

เพิ่มเติม.......................................................................................................................................... 12

แบบฝึกหัด.................................................................................................................................... 13

คำนวณ                                                     15

บวก ลบ คูณ หาร......................................................................................................................... 15

จำนวนเต็มกับจำนวนจริง............................................................................................................. 16

ตัวแปร........................................................................................................................................... 17

การตั้งชื่อตัวแปร........................................................................................................................... 18

การให้ค่าตัวแปร........................................................................................................................... 20

การเปลี่ยนประเภทข้อมูล............................................................................................................ 20

การอ่านข้อมูลจากแป้นพิมพ์........................................................................................................ 21

การใช้ตัวแปร................................................................................................................................ 23

คลาส Math และลำดับการดำเนินการ......................................................................................... 24

ลำดับการคำนวณ................................................................................................................. 26

การลดจำนวนตัวแปร.................................................................................................................... 27

การทดสอบและการแก้จุดบกพร่อง............................................................................................ 30

DWindow...................................................................................................................................... 35

ตัวดำเนินการเสริม........................................................................................................................ 37

เศษจากการหาร................................................................................................................... 37

บวกบวก ลบลบ................................................................................................................... 37

ตัวดำเนินการให้ค่า............................................................................................................... 37

เพิ่มเติม.......................................................................................................................................... 38

byte, short, long, float........................................................................................................ 38

จำนวนเต็มในระบบเลขฐานสอง......................................................................................... 39

จำนวนจริงในระบบเลขฐานสอง.......................................................................................... 40

การหารด้วยศูนย์.................................................................................................................. 41

เรื่องจุกจิกของ Scanner...................................................................................................... 42

แบบฝึกหัด.................................................................................................................................... 44

ทำซ้ำ ๆ                                                    47

วงวนไม่รู้จบ.................................................................................................................................. 47

DWindow...................................................................................................................................... 49

นาฬิกาเข็มเดียว................................................................................................................... 49

วาดลายเส้นด้วยเมาส์.......................................................................................................... 50

งูเลื้อยตามเมาส์.................................................................................................................... 50

งูเลื้อยตามเมาส์ (อีกแบบ).................................................................................................. 51

ลูกบอลเคลื่อนที่................................................................................................................... 53

การกระโดดออกจากวงวน........................................................................................................... 55

วงวนรู้จบ....................................................................................................................................... 56

โปรแกรมหาค่าเฉลี่ย (3 แบบ)............................................................................................ 57

การทดสอบจำนวนเฉพาะ................................................................................................... 59

การบรรยายแนวคิดของโปรแกรม.............................................................................................. 61

การบรรยายด้วยข้อความ................................................................................................... 61

การบรรยายด้วยรหัสเทียม................................................................................................. 61

การบรรยายด้วยผังงาน....................................................................................................... 62

เพิ่มเติม.......................................................................................................................................... 63

แบบฝึกหัด.................................................................................................................................... 65

เลือกปฏิบัติ                                         69

จริงถึงจะทำ................................................................................................................................... 69

การทดสอบความถูกต้องของข้อมูลขาเข้า........................................................................ 70

ลูกบอลเด้งได้....................................................................................................................... 70

วันใดของสัปดาห์................................................................................................................. 71

จริงทำอย่าง เท็จทำอย่าง............................................................................................................. 73

ตัวน้อยตัวมาก...................................................................................................................... 73

ค่าประมาณของ p ................................................................................................................ 74

คำสั่งกับกลุ่มคำสั่ง........................................................................................................................ 75

และ หรือ ไม่.................................................................................................................................. 76

กุมภาพันธ์มีกี่วัน.................................................................................................................. 76

ตัดเกรด................................................................................................................................. 78

ลำดับการทำงานของตัวดำเนินการ.................................................................................... 80

การจัดการนิพจน์ตรรกะ....................................................................................................... 80

if หลายชั้น..................................................................................................................................... 81

ตัวมากสุด............................................................................................................................. 81

มัธยฐาน................................................................................................................................ 83

ตัวแปรแบบ boolean.................................................................................................................... 84

เกมทายตัวเลข..................................................................................................................... 84

รากของสมการกำลังสอง..................................................................................................... 85

เพิ่มเติม.......................................................................................................................................... 87

ตัวดำเนินการเงื่อนไข........................................................................................................... 87

วงจรลัด................................................................................................................................. 87

switch-case.......................................................................................................................... 88

0.1 + 0.1 + 0.1 ¹ 0.3.......................................................................................................... 89

แบบฝึกหัด.................................................................................................................................... 90

ข้อความ                                                   95

สตริง.............................................................................................................................................. 95

บริการที่น่าสนใจของสตริง.......................................................................................................... 96

วงวน (อีกครั้ง).............................................................................................................................. 98

วงวน while........................................................................................................................... 98

วงวน do-while..................................................................................................................... 99

วงวน for................................................................................................................................ 99

ตัวอย่างการใช้งาน..................................................................................................................... 101

มาตรฐานรหัสแท่ง EAN-13............................................................................................. 101

พาลินโดรม.......................................................................................................................... 103

การเข้ารหัสลับแบบ ROT-13........................................................................................... 104

การอ่านเขียนแฟ้มข้อมูล............................................................................................................ 106

การอ่านแฟ้มข้อมูล............................................................................................................ 106

วรรณยุกต์ใดใช้มากสุด..................................................................................................... 107

การเขียนแฟ้มข้อมูล.......................................................................................................... 109

โปรแกรมตรวจคำสะกด.................................................................................................... 111

โปรแกรมแปลคำอังกฤษเป็นไทย.................................................................................... 113

การเปรียบเทียบสตริง............................................................................................................... 116

เพิ่มเติม........................................................................................................................................ 117

มาตรฐานยูนิโคด................................................................................................................ 117

ประเภทข้อมูล char........................................................................................................... 118

การเปรียบเทียบสตริงไทย............................................................................................... 119

แบบฝึกหัด.................................................................................................................................. 120

  แยกย่อย                                                 125

องค์ประกอบของเมท็อด........................................................................................................... 125

หัวเมท็อด........................................................................................................................... 127

ตัวเมท็อด........................................................................................................................... 128

ตัวอย่างผิดๆ...................................................................................................................... 129

การเรียกใช้เมท็อด..................................................................................................................... 130

การเรียกใช้เมท็อดของคลาสอื่น...................................................................................... 131

หลักการเขียนเมท็อด................................................................................................................. 132

การแปลงจำนวนเต็มเป็นข้อความ.................................................................................... 134

การวาดรูปหลายเหลี่ยมด้านเท่า...................................................................................... 137

การทดสอบความถูกต้องของพารามิเตอร์...................................................................... 140

เมท็อดแบบเรียกซ้ำ................................................................................................................... 142

ผลบวก 1 + 2 +... + n....................................................................................................... 144

จำนวนฟิโบนักชี................................................................................................................. 145

พาลินโดรม (อีกครั้ง).......................................................................................................... 146

การหาค่า ab mod m........................................................................................................... 147

หอคอยฮานอย.................................................................................................................. 148

เพิ่มเติม........................................................................................................................................ 151

การซ้อนเหลื่อมของปัญหาย่อย....................................................................................... 151

การวาดสาทิสรูปด้วยโปรแกรมแบบเรียกซ้ำ.................................................................. 152

แบบฝึกหัด.................................................................................................................................. 156

แถวลำดับ                                               159

การสร้างและการใช้งาน.............................................................................................................. 159

โปรแกรมเก็บสถิติคะแนนสอบ......................................................................................... 161

ลูกบอลหลายลูก................................................................................................................. 163

การใช้ดัชนีนอกช่วงของอาเรย์......................................................................................... 164

การตั้งค่าเริ่มต้น.......................................................................................................................... 165

เมท็อดที่รับอาเรย์...................................................................................................................... 166

การเปรียบเทียบอาเรย์..................................................................................................... 167

การหาค่ามากสุดในอาเรย์................................................................................................. 167

การค้นข้อมูลในอาเรย์....................................................................................................... 168

การสลับข้อมูลสองตัวในอาเรย์........................................................................................ 168

การล้างข้อมูลในอาเรย์...................................................................................................... 169

การเรียงลำดับข้อมูลในอาเรย์........................................................................................... 170

เมท็อดที่คืนอาเรย์...................................................................................................................... 172

การขยายอาเรย์................................................................................................................. 172

การคืนผลลัพธ์หลายตัว..................................................................................................... 172

การกรองข้อมูล.................................................................................................................. 173

การผสานข้อมูล.................................................................................................................. 174

โปรแกรมวาดกราฟเส้น.............................................................................................................. 175

ค่าเฉลี่ยเคลื่อนที่................................................................................................................ 177

อาเรย์หลายมิติ........................................................................................................................... 178

การประมวลผลเมทริกซ์.................................................................................................... 180

แผนที่จุดภาพ..................................................................................................................... 182

การประมวลผลภาพ........................................................................................................... 184

เพิ่มเติม........................................................................................................................................ 189

การอ่านข้อมูลจากบรรทัดคำสั่ง....................................................................................... 189

การจัดเก็บอาเรย์หลายมิติ................................................................................................ 191

คลาสมาตรฐานที่ให้บริการกับอาเรย์............................................................................... 193

ตัวดำเนินการระดับบิต...................................................................................................... 194

แบบฝึกหัด.................................................................................................................................. 197

วัตถุสิ่งของ                                              203

องค์ประกอบ การสร้าง และการใช้งาน.................................................................................... 203

เมท็อดประจำคลาส........................................................................................................... 204

ตัวแปรประจำคลาส........................................................................................................... 204

ตัวแปรประจำอ็อบเจกต์.................................................................................................... 205

เมท็อดประจำอ็อบเจกต์.................................................................................................... 209

ตัวสร้าง............................................................................................................................... 211

ข้อมูลส่วนบุคคล......................................................................................................................... 214

toString กับ equals.................................................................................................................... 216

ตัวอย่าง....................................................................................................................................... 218

คลาสเวลา........................................................................................................................... 218

คลาสจำนวนเชิงซ้อน......................................................................................................... 219

การหารากของสมการด้วยวิธีของนิวตัน......................................................................... 221

คลาสวินโดว์แสดงกราฟเส้น............................................................................................. 223

คลาสข้อมูลอนุกรมเวลา.................................................................................................... 226

เกมจับคู่ทดสอบความจำ.................................................................................................. 228

เกร็ดอ็อบเจกต์........................................................................................................................... 232

this และ this(...)................................................................................................................. 233

ตัวสร้างสำเนา.................................................................................................................... 235

ตัวแปรที่ตั้งค่าได้ครั้งเดียว................................................................................................ 236

เพิ่มเติม........................................................................................................................................ 238

คลาสที่ห้ามไม่ให้ new อ็อบเจกต์.................................................................................... 238

การจัดกลุ่มคลาสเป็นชุด................................................................................................... 239

สาทิสรูปของวิธีนิวตัน....................................................................................................... 242

แบบฝึกหัด.................................................................................................................................. 243

สร้างใหม่จากเก่า                                     249

การรับทอด................................................................................................................................. 249

ตัวอย่าง....................................................................................................................................... 253

แอลอีดีแบบจุด................................................................................................................... 253

แอลอีดีแสดงตัวเลข........................................................................................................... 255

แผงแอลอีดีแสดงจำนวนเต็ม............................................................................................. 257

DWindow3D ที่มีความลึก................................................................................................ 258

ลูกบอลเด้งในห้อง.............................................................................................................. 262

หนึ่งอ็อบเจกต์ หลายบทบาท................................................................................................... 264

การเปลี่ยนบทบาท............................................................................................................ 265

instanceof.......................................................................................................................... 266

การเรียกเมท็อดประจำอ็อบเจกต์.................................................................................... 267

ลูกบอลเด้งได้ (ต่อ).................................................................................................................... 269

คลาสที่รับผิดชอบมากไป................................................................................................. 270

คลาสที่รับผิดชอบเท่าที่จำเป็น......................................................................................... 271

เกร็ดการรับทอด......................................................................................................................... 273

Object : บรรพบุรุษของทุกคลาส..................................................................................... 273

@Override.......................................................................................................................... 277

คลาสและเมท็อดแบบ final............................................................................................... 278

เพิ่มเติม........................................................................................................................................ 280

ทัศนวิสัย............................................................................................................................. 280

คลาสนามธรรม................................................................................................................... 280

อินเทอร์เฟซ....................................................................................................................... 283

Comparable........................................................................................................................ 285

ศัพท์ OO............................................................................................................................. 288

แบบฝึกหัด.................................................................................................................................. 289

๑๐ สิ่งผิดปกติ                                             295

สิ่งผิดปกติเกิดขึ้นได้เสมอ......................................................................................................... 295

try - catch.................................................................................................................................... 297

ประเภทของสิ่งผิดปกติ............................................................................................................. 299

การสร้างและโยนสิ่งผิดปกติ...................................................................................................... 300

การประกาศว่าจะโยนสิ่งผิดปกติ...................................................................................... 301

ผิดอะไร ผิดอย่างไร ผิดที่ไหน......................................................................................... 303

การสร้างสิ่งผิดปกติแบบใหม่........................................................................................... 304

ขั้นตอนการโยน-รับสิ่งผิดปกติ.................................................................................................. 305

การใช้อ็อบเจกต์สิ่งผิดปกติที่ได้รับ................................................................................. 306

ลำดับการ catch................................................................................................................. 308

ตัวอย่าง....................................................................................................................................... 309

โปรแกรมคำนวณภาษีเงินได้............................................................................................ 309

โปรแกรมเติมภาพฉากหลังในแฟ้มรูปแบบ PDF............................................................. 312

โปรแกรมสรุปหัวข้อข่าว................................................................................................... 314

สุดท้ายนี้...................................................................................................................................... 316

เพิ่มเติม........................................................................................................................................ 318

การแทนเมท็อดของคลาสแม่ที่โยนสิ่งผิดปกติ............................................................... 318

assert : การยืนยันความจริง.............................................................................................. 319

แบบฝึกหัด.................................................................................................................................. 322

ภาคผนวก ก.  การติดตั้ง JLab                      327

ภาคผนวก ข.  DWindow                               335

ภาคผนวก ค.  บรรณานุกรม                        343

ดัชนี                                                            345