สนับสนุนโดย

วันศุกร์ที่ 23 พฤศจิกายน พ.ศ. 2561

method แบบ ส่งค่ากลับคืน

บางทีเราจะต้องส่ง parameter เข้าไป แล้วคำนวนอะไรบางอย่าง แล้วก็ส่งผลการทำงานกลับคืนไปยังจุดเรียกใช้ เช่นว่า เราต้องการ หาผลรวมของ 1 ถึง 10

void sumNumber(1, 10)



ประมาณนี้ ทีนี้หลักการมีอยู่ว่า ถ้ามีคำว่า void นำหน้า method ใดแสดงว่า method นั้นไม่ต้องส่งค่าใดๆ คืนกลับที่จุดเรียกใช้ แต่ถ้าหากมีการส่งค่าคืน ให้บอกว่าชนิดอะไร เช่น

int sumNumber(1, 10)

แปลว่า มีการส่งค่ากลับเป็นชนิด int หรือชนิดตัวเลขนั่นเองครับ

มาลองดูโค้ดเต็มๆ กัน

package hellojava;

public class MethodReturnValue {
    public static void main(String[] args) {
        MethodReturnValue m = new MethodReturnValue();
        int mySumValue = m.sumNumber(1, 10);
        
        System.out.println("mySumValue = " + mySumValue);
    }
    
    int sumNumber(int start, int end) {
        int sum = 0;
        
        for (int i = start; i <= end; i++) {
            sum += i;
        }
        
        return sum;
    }
    
}

ผลการทำงาน
mySumValue = 55

จุดสำคัญ

  1. เราต้องมีคำว่า return เพื่อส่งค่ากลับไปที่จุดเรียกใช้เสมอ ไม่อย่างนั้นจะเกิด error ครับ
  2. การส่งค่ากลับ ต้องเป็นชนิดข้อมูลเดียวกันกับที่กำหนดใน method return type
  3. การคืนค่าไปจุดเรียกใช้ ต้องหาตัวแปรมารับ โดยให้มีชนิดข้อมูลแบบเดียวกับที่ return กลับไป

ไม่มีความคิดเห็น:

แสดงความคิดเห็น