[Java OOP]การใช้งาน Constructor
Aagkasit Tontan
จากบทความ Class และ object คืออะไร เราได้เขียน class Dog ไว้แล้วก่อนหน้านี้แล้งครั้งนั้น Constructor เรายังไม่มีการกำหนดค่าอะไรเลย โดยบทความนั้นเราตอน ทดสอบ class Dog จะมีขั้นตอนการ setName ,setBreed รู้สึกว่ายุ่งยากมาก เราจะมาทำการกำหนดค่าต่างๆง่ายให้ง่ายขึ้นโดยการใช้ Constructor กัน
21:39:00
Java basic [OOP]
,
มีไฟล์
Convert base Numbers การแปลงเลขฐาน
Aagkasit Tontan
ในบทความนี้จะมีการแปลงเลขฐาน 6 แบบด้วยกัน คือ
- ฐาน 10 เป็น ฐาน 2
- ฐาน 10 เป็น ฐาน 16
- ฐาน 2 เป็น ฐาน 10
- ฐาน 2 เป็น ฐาน 16
- ฐาน 2 เป็น ฐาน 16
- ฐาน 10 เป็น ฐาน 16
Panel footer
00:53:00
Java basic
,
มีไฟล์
java - How to check if a string is a number เช็คว่าเป็นตัวเลขหรือตัวอักษร หรือไม่
Aagkasit Tontan
Input
142Sp94r09y+j0i50*5i198++07m6743 |
จาก input ให้ดึงเอาเฉพาะตัวเลขมาแสดง.
Output
14294090505198076743 |
Sample Code
String intput = "142Sp94r09y+j0i50*5i198++07m6743"; String number =""; for(int i = 0 ; i < intput.length() ;i++){ char c = intput.charAt(i); if(Character.isDigit(c)){ number += c; } } System.out.println("output : " +number);
ตัวอย่างการใช้งาน
เช่น เอาไปแก้ปัญหาในโจทย์ Opt String(http://goo.gl/YlfFyX)
เนื้อหาที่เกียวข้อง / ควรศึกษาเพิ่มเติมถ้าไม่เข้าใจ
- การใช้งาน if-else(http://goo.gl/3kFL66)
- การใช้งาร for-loop(http://goo.gl/qpNu1d)
01:00:00
Java basic
,
ไม่มีไฟล์
Java ArrayList Object example
Aagkasit Tontan
ArrayList เป็นอีกทางเลือกหนึ่งที่เราไม่ทราบ ขนาด Array ที่แน่นอน และช่วยให้เราสามารถเก็บข้อมูลเป็น object ได้
Method ของ ArrayList ที่จะใช้- add() : สำหรับเพิ่มข้อมูลให้ลงใน ArrayList
- get() : สำหรับดึงค่าใน ArrayList
- set() : สำหรับเปลี่ยนแปลงตำแหน่งข้อมูลใน ArrayList
วันนี้จะเราจะทำโจทย์ที่นำ ArrayList มาประยุกต์ใช้งานกัน
โจทย์ คือ จะให้ไฟล์ students.in ภายในไฟล์จะเป็นข้อมูลนักศึกษามาโดยมี รหัสนักศึกษา ชื่อนักศึกษา คะแนนที่ได้ อยากให้เรียงลำดับคะแนน นักศึกษาจาก มากไปหาน้อย
Student_Id,Student_name,Student_score 53001,Theerapong Hunghuan,50 53002,Vatcharin Phoya,35 53003,Prapakorn Moonnoi,38 53004,Agkasit Tontan,56 53005,Wattanakron Apichit,35 53006,Tanachai Sunarug,68 53007,Chanwit Phuwadkien,66 53008,Wkt Rescue,55 53009,Scream Srisawet,73 53010,Tanachai Sunarug,33 53011,Leng ManDer,46 53012,CupidNoy Sky InNocence,67
- ให้อ่านข้อมูลจากไฟล์ students.in เข้ามาเก็บใน Arraylist โดยสร้างคลาส Students สำหรับเก็บค่า studentId ,studentName,studentGate หรือจะมองเป็นหนึ่ง object แล้วมา add ใน Arraylist
- นำข้อมูลนักศึกษาทั้งหมดมาเรียงจากมากไปหาน้อย การเรียงข้อมูลจากมากไปหาน้อย โดยดึงเฉพาะ sutudentScore มาเปรียบเทียบ แล้วใช้ Method set ของ ArrayList ในการสลับตำแหน่ง
import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; public class ArrayListExample { private static String studentId; private static String studentName; private static int studentScore; public static void main(String[] args) throws IOException { BufferedReader readfile = new BufferedReader(new FileReader(new File( "C:/students.in"))); String tmp; readfile.readLine();// ไม่เก็บ Student_Id,Student_name,Student_score ArrayListรันดูstudentList = new ArrayList (); // เก็บข้อมูลนักศึกษาให้ครบ while ((tmp = readfile.readLine()) != null) { String[] arr = tmp.split(","); studentId = arr[0]; studentName = arr[1]; studentScore = Integer.parseInt(arr[2]); // add ข้อมูลนักศึกษา studentId,studentName,studentGate ใส่ // studentList studentList.add(new students(studentId, studentName, studentScore)); } // show ข้อมูล ดู for (int i = 0; i < studentList.size(); i++) { System.out.println(studentList.get(i).studentId + " " + studentList.get(i).studentName + " " + studentList.get(i).studentScore); } } } // สร้าง class students เพี่อเก็บ studentId ,studentName,studentGate static class students { public String studentId; public String studentName; public int studentScore; students(String studentId, String studentName, int studentScore) { this.studentId = studentId; this.studentName = studentName; this.studentScore = studentScore; } }
ขั้นตอนทึ่ 2 ใช้การเรียงข้อมูลแบบ Bubble Sort ในการเรียงข้อมูล
// Method สำหรับเรืยง ลำดับ score จาก มาก ->น้อย static ArrayListโค้ดทั้งหมดsort(ArrayList List) { students tmp; for (int i = 1; i < List.size(); i++) { for (int j = 0; j < List.size() - i; j++) { if (List.get(j).studentScore < List.get(j + 1).studentScore) { tmp = List.get(j); List.set(j, List.get(j + 1)); List.set(j + 1, tmp); } } } return List; }
เนื้อหาที่เกียวข้อง / ควรศึกษาเพิ่มเติมถ้าไม่เข้าใจ
- Class และ object คืออะไร (http://javaagkasit.blogspot.com/2012/09/class-object.html#.UTds1tapr2s)
- การใช้งาน constructor (http://javaagkasit.blogspot.com/2012/09/constructor.html#.UTdrRtapr2s)
- การใช้งาร for-loop(http://javaagkasit.blogspot.com/2012/08/for.html#.UTdrTdapr2s)
- การใช้งาน while-loop(http://javaagkasit.blogspot.com/2012/09/while-loop.html#.UTdrSNapr2s)
- การใช้งาน if-else(http://javaagkasit.blogspot.com/2012/08/if-else.html#.UTdrVNapr2s)
- class Arraylist (http://docs.oracle.com/javase/1.4.2/docs/api/java/util/ArrayList.html)
23:42:00
Java basic
,
Java basic [OOP]
,
มีไฟล์
การสร้างโปรเจกใน NetBeans IDE
Aagkasit Tontan
สำหรับคนที่หัดเขียน Java เป็นครังแรกนะครับ วันนี้เรามาพาสร้างโปรเจกใน NetBeans IDE ไม่พูดร่ำทำเพลง มาเริ่มกันเลย ขั้นแรกก็ new project
พอคลิก New Project ก็จะแสดงหน้าต่างให้เรา ตั้งชื่อโปรเจก ในที่นี้ ตั้งชื่อเป็น InceptionWatchQ
ตั้งชื่อโปรเจกตามรูป หรือตั้งตามใจเลยก็ได้ครับ |
ให้เราทำการ คลิกขวาที่ default package แล้วก็ new > Java Class
พอได้แล้วก็ ตั้งชื่อให้เหมือนกันกับชื้อโปรเจก ดังรูป แล้วก็กด finish
พอกดเสร็จ มันก็จะเจนค่าให้ดังรูป
ทีนี้ก็ได้ Class InceptionWatch มาแล้ว ซึ่งตอนนี้ยังไม่สามารถ run โปรเจกได้เนืองจากยังไม่มี Mathode main ให้เราพิมพ์
public static void main (String [] args){
}
23:16:00
Java basic
,
ไม่มีไฟล์
Subscribe to:
Posts
(
Atom
)