วันศุกร์ที่ 6 กรกฎาคม พ.ศ. 2550

Homework2


การรับตัวเลขที่ผู้ใช้ป้อนค่าทางคีย์บอร์ด Input number from keyboard (Scanner)

การรับค่าจากทางแป้นพิมพ์

1-ทำให้ใช้ Scannerได้

2-ใช้งานประกาศตัวแปร reader ให้มีค่าเป็น class Scanner

3-ใช้คำสั่งรับค่าจาก reader.nextLine()

**ไม่ว่าต้องการรับค่าเมื่อไร ให้ใช้reader.nextLine() (หรือตัวแปรตัวไหนก็ได้ ที่ประกาศไว้เป็น Scanner) เป็นตัวรับค่าจากทางเป้นพิมพ์**

nextมีโปรแกรมรับข้อมูลสำหรับdata tyepแต่ละแบบ จะเอามาปนกันไม่ได้ ดังนี้

Scanner read=new Scanner(System.in);

char b=read.next().charAt(0); // ชนิดข้อมูล Char

byte c=read.nextByte();// ชนิดข้อมูล byte

short d=read.nextShort();// ชนิดข้อมูล Short

int e=read.nextInt();// ชนิดข้อมูล Int

long f=read.nextLong(); // ชนิดข้อมูล Long

float g=read.nextFloat();// ชนิดข้อมูล Float

double h=read.nextDouble();// ชนิดข้อมูล Double

boolean i=read.nextBoolean();// ชนิดข้อมูล Boolean

ดูเพิ่มเติมที่ http://www.bloggang.com/mainblog.php?id=suar-hine&month=27-05-2007&group=9&gblog=3

Class ที่เป็น Wrapper จัดการกับตัวเลข


การเปลี่ยนแปลงข้อมูลสายอักขระเป็นข้อมูลตัวเลข และ การเปลี่ยนตัวเลขเป็นสายอักขระ

  • Integer Type Wrapper สำหรับจำนวนเต็ม

- public Integer(String s)

- public static String toString(int I, int radix)

- public static int parseInt(String s, int radix)

- public static Integer valueOf(Strings, int radix)

// radix คือระบบเลขฐาน เช่น 2, 8 10, 16 โดยปกติจะเป็นฐานสิบ

  • Double สำหรับจำนวนจริง

- public Double(String s)

- public static String toString(int I, int radix)

- public static Double valueOf(Strings, int radix)

// radix คือระบบเลขฐาน เช่น 2, 8 10, 16 โดยปกติจะเป็นฐานสิบ

ขั้นตอน เปลี่ยนข้อมูลสายอักขระเป็นข้อมูล Double ซึ่งเป็น class Double ที่เก็บค่าจำนวนจริง แต่ไม่สามารถเรียกไปคำนวณได้ Double tmpV = Double.valueOf(StrVal); เปลี่ยนค่าของ Double เป็นข้อมูลจำนวนจริงด้วย method doubleValue() double realVal = doubleValue(tmpV);


ดูเพิ่มเติ่ม www.cs.sci.ku.ac.th/~chulee/java-ku/java-5.ppt

1 ความคิดเห็น:

han chayakan กล่าวว่า...

ตั้งแต่ version 5 จาวา ได้เพิ่มเติม กลไก การเปลี่ยนข้อมูลระหว่าง primitive กับ wrapper โดยอัตโนมัต โดยไม่ต้องให้ผู้ใช้เป็นผู้แปลง กระบวนการนี้เรียกว่า autoboxing และ autounboxing