💠 کلیدواژه var در جاوا
🔆 از بعد جاوای 10 میتوان بجای نوشتن مستقیم نوع داده ها، از کلیدواژه var استفاده کرد.
در نتیجه در خط کد زیر، میتوانید نوع داده یعنی String را
⁉️ آیا var در جاوا مشابه var در جاوا اسکریپت است؟
جاوا یک زبان statically typed است. یعنی نوع داده ها از همان ابتدا که مشخص میشود، تا آخر برنامه ثابت میماند. در نتیجه var در جاوا کاملا متفاوت از var در جاوا اسکریپت میباشد. در جاوا اسکریپت هر زمان که بخواهید میتوانید نوع داده را تغییر دهید. اما همینکار در جاوا خطای کمپایل خواهد داشت:
1️⃣
⚠️ در حالت های زیر نمیتوانید از var استفاده کنید. در صورت استفاده خطای کمپایل خواهید داشت:
❌ هر کجا که نوع داده برای کمپایلر مبهم باشد:
——————-
تیکه پاره های جاوا
@PieceJava
🔆 از بعد جاوای 10 میتوان بجای نوشتن مستقیم نوع داده ها، از کلیدواژه var استفاده کرد.
در نتیجه در خط کد زیر، میتوانید نوع داده یعنی String را
String name = "Mohammad Reza";با کلید واژه var جایگزین کنید:
var name = "Mohammad Reza";در این حالت خود کمپایلر نوع داده را تشخیص میدهد.
⁉️ آیا var در جاوا مشابه var در جاوا اسکریپت است؟
جاوا یک زبان statically typed است. یعنی نوع داده ها از همان ابتدا که مشخص میشود، تا آخر برنامه ثابت میماند. در نتیجه var در جاوا کاملا متفاوت از var در جاوا اسکریپت میباشد. در جاوا اسکریپت هر زمان که بخواهید میتوانید نوع داده را تغییر دهید. اما همینکار در جاوا خطای کمپایل خواهد داشت:
var text = "Hello World";چند مثال استفاده از var:
text = 23; // Incompatible types
1️⃣
Person person = new Person();2️⃣
var person = new Person();
ArrayList<Integer> numbers = new ArrayList<>();3️⃣
var numbers = new ArrayList<Integer>();
int[] x = {1,2,3,4,5};
int[] y = new int[10];
var x = new int[]{1,2,3,4,5};
var y = new int[10];
🟡 متغیر از نوع var میتواند فاینال تعریف شود تا از مقداردهی دوباره آن جلوگیری شود:final var text = "Hello World"(بر خلاف کاتلین که val برای مقادیر ثابت بود، اینجا چیزی به نام val نداریم و باید از فاینال استفاده کنیم)
⚠️ در حالت های زیر نمیتوانید از var استفاده کنید. در صورت استفاده خطای کمپایل خواهید داشت:
❌ هر کجا که نوع داده برای کمپایلر مبهم باشد:
var a;❌ متغیر از نوع var بعنوان یک متغیر گلوبال به کار برود.
var nothing = null;
var lambda = () -> System.out.println("Pity!");
var method = this::someMethod;
class Person{
var name;
var adress;
var age;
}
❌ کلیدواژه var تعیین کننده خروجی متد یا نوع ورودی متد باشد. var myMethod(){
}
void myMethod(var x){
}
#var #keywords——————-
تیکه پاره های جاوا
@PieceJava
👍12❤2