เอเพ็กซ์ - ตัวแปร
Java และ Apex มีความคล้ายคลึงกันในหลาย ๆ ด้าน การประกาศตัวแปรใน Java และ Apex ก็ค่อนข้างเหมือนกัน เราจะพูดถึงตัวอย่างบางส่วนเพื่อทำความเข้าใจวิธีการประกาศตัวแปรท้องถิ่น
String productName = 'HCL';
Integer i = 0;
Set<string> setOfProducts = new Set<string>();
Map<id, string> mapOfProductIdToName = new Map<id, string>();
โปรดทราบว่าตัวแปรทั้งหมดถูกกำหนดด้วยค่า null
Declaring Variables
คุณสามารถประกาศตัวแปรใน Apex เช่น String และ Integer ได้ดังนี้ -
String strName = 'My String'; //String variable declaration
Integer myInteger = 1; //Integer variable declaration
Boolean mtBoolean = true; //Boolean variable declaration
Apex variables are Case-Insensitive
ซึ่งหมายความว่ารหัสที่ระบุด้านล่างนี้จะทำให้เกิดข้อผิดพลาดเนื่องจากมีการประกาศตัวแปร 'm' สองครั้งและทั้งสองจะถือว่าเหมือนกัน
Integer m = 100;
for (Integer i = 0; i<10; i++) {
integer m = 1; //This statement will throw an error as m is being declared
again
System.debug('This code will throw error');
}
Scope of Variables
ตัวแปรเอเพ็กซ์สามารถใช้ได้จากจุดที่มีการประกาศในโค้ด ดังนั้นจึงไม่อนุญาตให้กำหนดตัวแปรเดียวกันใหม่อีกครั้งและในบล็อกโค้ด นอกจากนี้หากคุณประกาศตัวแปรใด ๆ ในเมธอดขอบเขตตัวแปรนั้นจะถูก จำกัด ไว้เฉพาะเมธอดนั้นเท่านั้น อย่างไรก็ตามตัวแปรคลาสสามารถเข้าถึงได้ทั่วทั้งคลาส
Example
//Declare variable Products
List<string> Products = new List<strings>();
Products.add('HCL');
//You cannot declare this variable in this code clock or sub code block again
//If you do so then it will throw the error as the previous variable in scope
//Below statement will throw error if declared in same code block
List<string> Products = new List<strings>();