Map

Map

คือ Array แบบหนึ่งที่การอ้างถึงค่าใน Array จะใช้วัตถุแทน index ที่เป็นตัวเลข

 

รูปแบบคือ               Map<คลาสของ Index , คลาสของ Value>

( ถ้าเทียบกับอาร์เรย์ปกติ data[0] = 5; ในที่นี้ 0 คือ index และ 5 คือ Value )

วิธีใช้ Map หากต้องการใส่ค่าใช้ put(คีย์ , ค่า ) หากต้องการดูค่าใช้ get( คีย์ ) เช่น

 

Map<String,String> address = new HashMap<String,String>( );

address.put(“John”,”  “23 xx Road.”);

address.put(“Mary”,   “66 yy Road.”);

System.out.println(address);

 

23 xx Road.

 

 

 

 

System.out.println(address.get(“John”));

 

 

 

Enum

คือการประกาศค่าคงที่โดยกำหนดค่าที่สามารถเป็นไปได้ไว้ด้วย รูปแบบคือ

enum ชื่อ enum

{

            ค่าที่เป็นไปได้

}

 

enum Grade {

 

    A, B , C , D ,F ;

 

}

การเรียกใช้คือ ชื่อ enum.ค่าที่กำหนด เช่น Grade.C หากกำหนดค่าอื่นที่ไม่ได้กำหนดเอาไว้จะเกิด error ขึ้น

นอกจากนี้เรายังสามารถสร้างเมธอดใน enum ได้

ตัวอย่าง enum ที่ได้กำหนดค่าของเกรด

public enum Grade{

      A,B,C,D,F;

      double getPoint()

      {     switch (this)

            {  

                  case A: return 4;

                  case B: return 3;

case C: return 2;

case D: return 1;

default :

        return 0;

}

}

}

 

วิธีใช้คือ

public class TestGrade

{

      public static void main(String[] args)

      {    

            Grade myGrade = Grade.A

            System.out.println(“My Grade is ” + myGrade + “ = ” +

                                myGrade.getPoint() + “Points”);

           

      }

}

 

เพื่อป้องกันการลืมกำหนดค่าให้กับ enum เราสามารถเรียกใช้ constructor ของ enum เพื่อกำหนดค่าได้ เช่น

public enum Grade {

      A(4),B(3),C(2),D(1),F(0);

      pivate Grade(double p)

      {     point = p; }

      public final double point;

}

 

วิธีใช้ก็จะเปลี่ยนเป็น

Grade myGrade = Grade.A

            System.out.println(“My Grade is ” + myGrade + “ = ” +

                                myGrade.point() + “Points”);

 
อ้างอิงจาก เอกสารประกอบการเรียนวิชา Modern Programming

กรุณา Comment สักหน่อยเถอะ จะได้ปรับปรุ่งให้ดีขึ้น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s