رياضياتي عمل
اچو ته سڀ کان سادي شيء سان شروع ڪريون - رياضياتي عملن سان. اهي مشهور آهن اضافو (+ نشاني)، ذيلي تقسيم (-)، ضرب (*) ۽ تقسيم (/).public class Main {
public static void main(String[] args) {
int x = 999;
int y = 33;
System.out.println(x+y);
System.out.println(x-y);
System.out.println(x*y);
System.out.println(x/y);
}
}
ڪنسول آئوٽ:
1032
966
32967
30
توھان اڳ ۾ ئي ھي سڀ استعمال ڪيو آھي. توھان انھن کي ھڪڙو آپريشن شامل ڪري سگھو ٿا %
- باقي حصو.
public class Main {
public static void main(String[] args) {
int x = 33;
int y = 33%2;
System.out.println(y);
}
}
ڪنسول آئوٽ:
1
هن مثال ۾، اسان 33 کي 2 سان ورهايون ٿا. نتيجي طور، اسان کي 16 ملي ٿو ۽ اتي هڪ اضافي "دم" رهي ٿو جيڪا 2 - هڪ سان ورهائي نه ٿي سگهي. هي "دم" "ڊيويزن جي باقي" آپريشن جو نتيجو ٿيندو. جاوا (انهي سان گڏ رياضي) تقابلي آپريٽرز کي لاڳو ڪري ٿو . توھان شايد انھن کي اسڪول کان ڄاڻو ٿا:
- برابر (
==
) - وڌيڪ (
>
) - گھٽ (
<
) - کان وڏو يا برابر (
>=
) - کان گھٽ يا برابر (
<=
) - برابر نه آهي (
!=
)
==
، ۽ نه هڪ نشاني سان =
. جاوا ۾ يونٽ جي نشاني =
هڪ تفويض آپريٽر آهي، جتي هڪ متغير هڪ نمبر، اسٽرنگ، يا ٻي متغير جي قيمت مقرر ڪئي وئي آهي.
public class Main {
public static void main(String[] args) {
int x = 33;
int y = 999;
System.out.println(x=y);// expect false to be printed to the console
}
}
ڪنسول آئوٽ:
999
اڙي! اهو واضح طور تي نتيجو ناهي جيڪو اسان توقع ڪئي هئي. هي هڪ مڪمل طور تي مختلف قسم جي ڊيٽا آهي: اسان کي ڏسڻ جي اميد هئي boolean
، پر هڪ نمبر مليو. اهو ئي سبب آهي ته قوس ۾ اسان وٽ هڪ تفويض آپريشن آهي، نه مقابلو. x=y
قدر y
(999) متغير کي مقرر ڪيو ويو x
، ۽ پوء اسان ان کي x
ڪنسول تي پرنٽ ڪيو. صحيح اختيار:
public class Main {
public static void main(String[] args) {
int x = 33;
int y = 999;
System.out.println(x==y);
}
}
ڪنسول آئوٽ:
false
هاڻي اسان صحيح طور تي 2 نمبرن جو مقابلو ڪيو آهي! :) تفويض آپريشن جي هڪ ٻي خصوصيت ( =
) اها آهي ته اهو ٿي سگهي ٿو "زنجيرن":
public class Main {
public static void main(String[] args) {
int x = 999;
int y = 33;
int z = 256;
x = y = z;
System.out.println(x);
}
}
ڪنسول آئوٽ:
256
ياد رکو: تفويض ساڄي کان کاٻي طرف ڪيو ويندو آهي. هي اظهار ( x = y = z
) مرحلن ۾ عمل ڪيو ويندو:
- y = ز، يعني y = 256
- x = y، يعني x = 256
غير معمولي آپريشن
انهن کي ”يونري“ لفظ ”يون“ - ”ون“ مان سڏيو وڃي ٿو. انهن کي اهو نالو مليو آهي، ڇاڪاڻ ته، پوئين ماڻهن جي برعڪس، اهي هڪ نمبر تي ڪيا ويا آهن، ۽ ڪيترن ئي تي نه. انهن ۾ شامل آهن:-
يونيري مائنس. اهو انگ جي نشاني کي رد ڪري ٿو.
public class Main { public static void main(String[] args) { int x = 999; // change the sign for the first time x = -x; System.out.println(x); // change the sign a second time x= -x; System.out.println(x); } }
ڪنسول آئوٽ:
-999 999
اسان ٻه ڀيرا يونيري مائنس استعمال ڪيو. نتيجي طور، اسان جو نمبر پهريون ڀيرو منفي ٿيو، ۽ پوء ٻيهر مثبت!
-
واڌارو (
++
) ۽ گهٽتائي (--
)هڪ آپريشن
++
هڪ انگ وڌائي ٿو، ۽ هڪ آپريشن--
ان کي ساڳئي يونٽ ذريعي گھٽائي ٿو.public class Main { public static void main(String[] args) { int x = 999; x++; System.out.println(x); x--; System.out.println(x); } }
ڪنسول آئوٽ:
1000 999
x++
- پوسٽ فڪس نوٽيشن ++x
- پريفڪس نوٽيشن ڇا بنيادي فرق آهي جيڪڏهن توهان نمبر کان اڳ يا بعد ۾ پلس ۽ منٽ لڳايو؟ اچو ته هڪ مثال ۾ ڏسون:
public class Main {
public static void main(String[] args) {
int x = 999;
int y = x++;
System.out.println(y);
}
}
ڪنسول آئوٽ:
999
ڪا ڳالهه آهي ڇا! اسان چاهيون ٿا ته x
1 وڌائي وڌائي ۽ متغير کي نئين قيمت تفويض ڪريو y
. اهو آهي، y برابر هجڻ گهرجي 1000. پر اسان وٽ هڪ مختلف نتيجو آهي - 999. اهو ظاهر ٿئي ٿو ته اهو x
نه وڌايو ويو، ۽ واڌارو آپريشن ڪم نه ڪيو؟ اهو ڪيئن ڪم ڪيو. ھن جي تصديق ڪرڻ لاءِ، ڪوشش ڪريو x کي آخر ۾ ڪنسول ڏانھن ڇپائي :)
public class Main {
public static void main(String[] args) {
int x = 999;
int y = x++;
System.out.println(y);
System.out.println(x);
}
}
ڪنسول آئوٽ:
999
1000
حقيقت ۾، اهو ئي سبب آهي ته پوسٽ فڪس آپريشن کي اهو طريقو سڏيو ويندو آهي: اهو مکيه اظهار کان پوء ڪيو ويندو آهي. اھو آھي، اسان جي صورت ۾: int y = x++;
پھريائين ان تي عمل ڪيو ويندو آھي y = x
(۽ متغير y کي ان جي اصل قيمت مقرر ڪيو ويندو x
)، ۽ صرف پوءِ x++
. جيڪڏھن اسان ھن رويي سان مطمئن نه آھيون؟ توھان کي استعمال ڪرڻ جي ضرورت آھي اڳوڻو نوٽيشن:
public class Main {
public static void main(String[] args) {
int x = 999;
int y = ++x;
System.out.println(y);
}
}
++x
انهي صورت ۾، اهو پهريون ۽ صرف ان کان پوء ڪم ڪندو . y = x;
اهو فرق فوري طور تي ياد رکڻ جي قابل آهي ته جيئن ڪنهن حقيقي پروگرام ۾ غلطي نه ٿئي، جنهن ۾ سڀني رويي کي ان جي سبب ڪري سگهي ٿو:)
گڏيل آپريشن
ان کان سواء، جاوا ۾ نام نهاد گڏيل آپريشن آهن. اهي ٻن عملن جي ميلاپ کي استعمال ڪن ٿا:- تفويض
- رياضياتي آپريشن
+=
-=
*=
/=
%=
public class Main {
public static void main(String[] args) {
int x = 999;
int y = 33;
x += y;
System.out.println(x);
}
}
ڪنسول آئوٽ:
1032
x += y
مطلب x = x + y
. صرف اختصار خاطر، هڪ قطار ۾ ٻه حرف استعمال ڪيا ويا آهن. اهو پڻ ڪم ڪري ٿو -=
, *=
۽ /=
.%=
منطقي عمل
انگن تي عملن کان علاوه، جاوا ۾ Boolean variables -true
۽ false
. اهي آپريشن منطقي آپريٽرز استعمال ڪندي ڪيا ويا آهن
-
!
- ”نه“ آپريٽر. بولان متغير جي قيمت کي رد ڪري ٿوpublic class Main { public static void main(String[] args) { boolean x = true; System.out.println(!x); } }
ڪنسول آئوٽ:
false
-
&&
- آپريٽر "AND". هڪ قدر واپس ڪري ٿوtrue
صرف ان صورت ۾ جڏهن ٻئي آپرينڊ آهنtrue
.public class Main { public static void main(String[] args) { System.out.println(100 > 10 && 100 > 200); System.out.println(100 > 50 && 100 >= 100); } }
ڪنسول آئوٽ:
false true
پهرين آپريشن جو نتيجو آهي
false
، ڇاڪاڻ ته شرطن مان هڪ غلط آهي، يعني 100 > 200. آپريٽر کي سڀني شرطن جي صحيح هجڻ جي ضرورت آهي (جهڙوڪ ٻي لائين ۾، مثال طور)&&
واپسي ڪرڻ لاء .true
-
||
- "OR" آپريٽر. واپسيtrue
جڏھن گھٽ ۾ گھٽ ھڪڙي عملن مان صحيح آھي.هتي اسان جو اڳوڻو مثال مختلف ڪم ڪندو:
public class Main { public static void main(String[] args) { System.out.println(100 > 10 || 100 > 200); } }
ڪنسول آئوٽ:
true
Выражение 100 > 200 по-прежнему ложно, но оператору “or” вполне достаточно, что первая часть (100 > 10) является истинной.
GO TO FULL VERSION