สมัครเรียนโทร. 085-350-7540 , 084-88-00-255 , ntprintf@gmail.com

ฟรี TUTORIAL JAVA

ฟรีtutorial JAVA 01 install Eclipse ฟรีtutorial JAVA 02 intro to programming Eclipse ฟรีtutorial JAVA 03 condiotion ฟรีtutorial JAVA 04.loop ฟรีtutorial JAVA 05.array ฟรีtutorial JAVA 05 2 array cont ฟรีtutorial JAVA 06 01 function ฟรีtutorial JAVA 06 02 function cont ฟรีtutorial JAVA 07 object ฟรีtutorial JAVA 08 string ฟรีtutorial JAVA 09 constructor ฟรีtutorial JAVA 10 01 oop ฟรีtutorial JAVA 10 02 oop2 ฟรีtutorial JAVA 11 exception ฟรีtutorial JAVA 12 reading file ฟรีtutorial JAVA 13 thread ฟรีtutorial JAVA 14 generic ฟรีtutorial JAVA 15 01 GUI ฟรีtutorial JAVA 15 02 GUI2 ฟรีtutorial JAVA 15 03.GUI3 ฟรีtutorial JAVA 16 using WindowBuilder ฟรีtutorial JAVA 17 event ฟรีtutorial JAVA 18 database management system ฟรีtutorial JAVA 19 ER diagram ฟรีtutorial JAVA 20 Relational ฟรีtutorial JAVA 21 Xampp ฟรีtutorial JAVA 22 JDBC ฟรีtutorial JAVA 23 MVC ฟรีtutorial JAVA 24 SQL ฟรีtutorial JAVA
ขอย้ำอีกครั้งว่าเนื้อหาที่เห็นอยู่นี้ไม่ใช่เนื้อหาตามปกติที่เราสอนในห้องเรียนเป็นแค่ tutorial ไว้อ่านประกอบเฉยๆ แทบไม่เกี่ยวกันเลย และไม่เกี่ยวกับการบ้านที่ทำครับ ในห้องเรียนเนื้อหาจะเยอะกว่านี้ค่อนข้างมากครับ
ขอบคุณน้องตี้ อย่างสูงสำหรับ Tutorial ดีๆ

ฟรี TUTORIAL DATA STRUCTURE

DATA STRUCTURE

ฟรีtutorial : DATA STRUCTURE : 01 1การเรียงลำดับ(Sorting) ฟรีtutorial : DATA STRUCTURE : 01 2 การเรียงลำดับ2 ฟรีtutorial : DATA STRUCTURE : 02 อาร์เรย์ลิสต์ (Array List) ฟรีtutorial : DATA STRUCTURE : 03 ลิงค์ลิสต์ (Linked List) ฟรีtutorial : DATA STRUCTURE : 04 สแต๊ค ฟรีtutorial : DATA STRUCTURE : 05 1 คิวและไพออริตี้คิว ฟรีtutorial : DATA STRUCTURE : 05 2 คิวและไพออริตี้คิว ฟรีtutorial : DATA STRUCTURE : 06 1 ไบนารีทรี ฟรีtutorial : DATA STRUCTURE : 06 2 ไบนารีเสิร์ชทรี ฟรีtutorial : DATA STRUCTURE : 06 3 ไบนารีเสิร์ชทรี ฟรีtutorial : DATA STRUCTURE : 08 แฮช ฟรีtutorial : DATA STRUCTURE : 09 กราฟ ฟรีtutorial : DATA STRUCTURE :
ขอย้ำอีกครั้งว่าเนื้อหาที่เห็นอยู่นี้ไม่ใช่เนื้อหาตามปกติที่เราสอนในห้องเรียนเป็นแค่ tutorial ไว้อ่านประกอบเฉยๆ แทบไม่เกี่ยวกันเลย และไม่เกี่ยวกับการบ้านที่ทำครับ ในห้องเรียนเนื้อหาจะเยอะกว่านี้ค่อนข้างมากครับ
ขอบคุณน้องตี้ อย่างสูงสำหรับ Tutorial ดีๆ

                                                                   

สตริง(String)

            สตริงใช้สำหรับเก็บตัวอักษร ตัวเลข ทำให้เข้าใจได้ง่ายมากขึ้นเพราะปกติคอมพิวเตอร์จะทำงานด้วยตัวเลข แต่มนุษย์สื่อสารด้วยตัวหนังสือ สตริงจะมีเครื่องหมายเปิด ปิดคือ “ และ ” เช่น “Hello World” สตริงจะทำการเรียงตัวอักษรต่อกันในหน่วยความจำ อย่างเช่น “Hello World” จะถือว่ามีสตริงอยู่ 11 ตัว โดยดัชนี(index)เริ่มต้นที่ 0

เมท็อดในสตริง

            นอกเหนือจากเมท็อดที่สตริงมีให้ยังมีเรื่องเครื่องหมาย + ที่ได้เขียนกันมาแล้ว เครื่องหมาย + ในจาวานอกจากจะหมายถึง บวก ในตัวดำเนินการ ยังหมายถึงการต่อสตริงด้วย  เช่น System.out.println(“สวัสดีคุณ ”+name)  หมายถึงเอาสตริงของตัวแปร name ไปต่อกับสตริงที่อยู่ใน ( )

นอกจากนี้ในสตริงยังมีเมท็อดสำหรับการใช้งานซึ่งเมท็อดที่สำคัญๆและใช้งานบ่อยๆมีดังนี้

String s;

s.length( ) คือขนาดของสตริง จำนวนตัวอักษรทั้งหมด เช่น Hello มี length 5 ตัวอักษร

s.trim( ) ใช้สำหรับตัดช่องว่างด้านหน้าและด้านหลังสตริง คือเวลาที่ทำกล่องให้กรอกข้อมูลบางครั้งผู้กรอกข้อมูลอาจใส่ช่องว่างโดยที่ไม่ได้ตั้งใจ การตัดช่องว่างออกจะทำให้การประมวลผลเข้าใจได้ง่าย เช่น เวลานับตัวอักษรบนสตริงก็จะไม่งง

s.substring( i, j ) เอาสับสตริงตัวที่ i ถึง j-1 ออกมาจากสตริง เช่น Hello substring(2, 5) จะได้สับสตริง ell คือ e เป็นตัวที่ 2 ส่วน l เป็นตัวที่ 3 และ l อีกตัวเป็นตัวที่ j-1 คือ 5-1 = 4 ของสตริง

s.indexOf( t, i ) หาตัวอีกษรหรือข้อความ t โดยเริ่มหาจากตัวที่ i ใช้ในกรณีที่ต้องการหาคำบางคำและอาจจะตัดคำๆนั้นด้วย substring เอาไปใช้งานต่อ

s.equals( t ) ถ้า s เหมือนกับ t ทุกประการให้คืนค่าจริง

s.equalsIgnoreCase( t ) ถ้า s เหมือนกับ t ทุกประการให้คืนค่าจริงโดยไม่สนว่าจะตัวใหญ่เล็กไม่เหมือนกัน ถ้าข้างบนคือตัว T t ถือว่าเป็นคนละตัวเลย

s.toUpperCase( ) เปลี่ยนทุกตัวในสตริงให้เป็นตัวอักษรใหญ่(capital letter)

s.toLowerCase( ) เปลี่ยนทุกตัวในสตริงให้เป็นตัวอักษรเล็ก(small letter)

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

char จะเป็นการเก็บข้อมูลแค่ 1 ตัวอักษร โดยจะเขียนเครื่องหมาย ‘ และ ’ เพื่อเปิดปิดตัวอักษรนั้น เช่น char c = ‘a’; เนื่องจากในจาวา char จะถูกมองเป็นตัวเลขเหมือน 1 2 จึงสามารถใช้เครื่องหมาย ==   >=   <=   !=  ในการตรวจสอบ char ได้ รวมถึง operation ต่างๆ เช่น + - * / % ได้ด้วย อย่าง ‘ก’+1 จะได้ ข  

เมท็อดที่เกี่ยวข้องกับ char ได้แก่ s.charAt(i) คืนค่า char ตำแหน่งที่ i ของสตริง s

การใช้

 


รูป 8-1

โปรแกรมนี้ต้องการตรวจสอบว่าถ้ามีสตริง 2 สตริง จะมีสตริง2 เป็นสับสตริงของสตริงแรกหรือไม่

บรรทัดที่ 8 : ประกาศตัวแปรสตริง s1 และ s2 จากนั้นให้รับข้อมูลจากแป้นพิมพ์มาใส่สตริง

บรรทัดที่ 11,13: รับข้อมูลจากแป้นพิมพ์มาใส่สตริง โดยใช้ nextLine()

บรรทัดที่ 15 : ใช้เงื่อนไขตรวจสอบ ถ้าตรวจข้อความในสตริง s2 เทียบกับ s1 แล้วคืนค่า -1 ก็คือไม่

มี s2 อยู่ใน s1 ให้แสดงผลทางหน้าจอว่าไม่มี

บรรทัดที่ 20 : วนลูปโดยให้ตัวแปร i มีค่ามากกว่า 0 แต่ไม่เกินขนาดของสตริงs1 ให้วนลูป

ตรวจสอบคำสั่งในลูป

บรรทัดที่ 22 : ให้หาว่ามี s2 อยู่ใน s1 หรือไม่ โดยตรวจสอบจากดัชนีที่เริ่มและสิ้นสุดตามการวน

ลูปของตัวแปร i

บรรทัดที่ 23 : ตรวจสอบเพื่อความมั่นใจว่าถ้ามีค่าเป็น -1 ให้ break หรือหยุดทำงานเลย

บรรทัดที่ 24 : แต่ถ้าเจอให้แสดงผลออกทางหน้าจอว่าเจอ s2 ทีดัชนีที่เท่าไหร่ของ s1

ผลลัพธ์

            ใส่คำว่า Study Java ลงไป และให้หาคำว่า Jav ซึ่งพบที่ดัชนีที่ 6 (ช่องก็นับด้วย)

 


รูป 8-2

พาลินโดรม

            พาลินโดรมคือคำ ตัวเลข สัญลักษณ์ที่มีสมมาตร เช่น dad Anna 123454321หรือประโยคก็ได้ เช่น  Eva, can I stab bats in a cave? ภาษาไทยก็เช่น ทายาท หรือประโยค ดีใจคุณแม่คุณใจดี

            โปรแกรมต่อไปนี้จะตรวจสอบว่าสตริงที่รับเข้ามาเป็นพาลินโดรมหรือไม่

 


รูป 8-3

บรรทัดที่ 9-12 : ประกาศตัวแปรสตริงและรับข้อมูลจากแป้นพิมพ์เข้ามาใส่สตริง

บรรทัดที่ 14-15 : ให้ x เก็บความยาวของสตริงและ y เก็บดัชนีตัวหลังสุดของครึ่งซ้ายของสตริง(เวลาดูพาลินโด

รมก็ตรวจดูที่ละครึ่งว่าครึ่งหน้าเหมือนครึ่งหลังไหม)

บรรทัดที่ 16 : ประกาศตัวแปร isPalindrome ให้มีค่าเป็นจริง

บรรทัดที่ 19 : ตรวจว่าเท่ากันไหมระหว่างครึ่งแรกเท่ากับครึ่งหลังคือตัวที่ความยาวทั้งหมดลบ1 โดยใช้ == ได้

เพราะ char จะเก็บข้อมูลแบบหนึ่งตัวอักษร (ถ้าเทียบสตริงต้องใช้ .equals)

บรรทัดที่ 22 : ถ้าไม่ใช่พาลินโดรมให้ออกจากลูป

บรรทัดที่ 28 : ประกาศตัวแปร result เก็บค่าจากการตรวจสอบโดยใช้ if ถ้าจริงให้แสดงว่าเป็น ถ้าไม่ให้แสดง

ว่าไม่เป็น

ผลลัพธ์

 


รูป 8-4

 



แผนผังการเรียนเขียนโปรแกรม