سم الله الرحمن الرحيم
ازيكوا ياجماعة يارب تكونوا بخير النهارده ان شاء الله هنتكلم عن حاجة حلوة كده ولذيذه جدا وزى احنا متعودين هنكتب العناصر اللى هيدور خوليها الشرح :
1- Data Tybes
2-Variables
3-Structure Programming
(Loops - Conditions)
اولا : هنتكلم عن Data Tybes
بداية لازم نعرف ان Data Tybes دى نوعين :
Premitive and None Premitive
1-Premitive data Tybe
دى انواع البيانات اللى احنا عارفين حجمها زى مثلا :
Integers
Floating Point
Char ..........
وطبعا الحاجات دى بتتخزن فى مكان فى Memory اسمه Stack
2- None Premitive Data Tybe
دى انواع البيانات اللى احنا مش عارفين حجمها زى مثلا :
Objects - Classes
وطبعا الحاجات دى بتتخزن فى مكان فى Memory اسمه Heap
طيب لو جينا كده نفصل اكتر ونجمع شوية تفاصيل عن انواع البيانات
بلا بينا
زى ما الباشمهندس أحمد النهارده قال ان انواع البيانات
تنقسم تفصيليا الى أربعة انواع بنستخدمها
1- فصيلة الاعداد الصحيحة ( Integers ) :
وتحت هذا الاسم يندرج ثلاثة انواع اخرى الا وهى
Int >>>>>>>>> 4 byte >>>>>>>32 bit
short >>>>>>>>2 byte>>>>>>>>> 16 bit
Long>>>>>>>>>8 byte>>>>>>>>>64 Bit
Byte >>>>>>>>>> 1 byte >>>>>>>> 8 bit
طبعا ياجماعة أحنا عارفين ان Java Is Independant Platform
يعنى لو انا روحت عملت برنامج مثلا جمع رقمين وعملت مثلا متغير x من النوع Int
هتكون مساحة Int >>>>> 4 byte
على اى الة حاسب وعلى اى نظام تشغيل ثابته
بينما فى لغة C++
data tybe depends on the platform and The operatin system
يعنى فى مثلا
on 16 - bit processor integer is >>>>2 - byte
4byte <<<<<< on 32- bit processor integer is
يعنى المقصد انى أقول ان مساحة نوع البيانات متغيرة بتغير الالة اللى بشتغل عليها او بنغير نظام التشغيل بينما عندنا فى الجافا طبعا المساحة ثابتة
2-Floatin Point
بيقولك بقى ان اى رقم عشرى يعنى فيه حاجة اسمها الــ (fraction) ده الجزء العشرى يندرج تحت كلمة Floatin Point
Floatin Point is any number has a fraction
طيب تمام
ده بقى يه نوعين
Float >>>>>>>4 byte >>>>>>> 32 bit
Double >>>>>>8 byte >>>>>64 bit
Floating Numbers in code
1- float in code
ازيكوا ياجماعة يارب تكونوا بخير النهارده ان شاء الله هنتكلم عن حاجة حلوة كده ولذيذه جدا وزى احنا متعودين هنكتب العناصر اللى هيدور خوليها الشرح :
1- Data Tybes
2-Variables
3-Structure Programming
(Loops - Conditions)
اولا : هنتكلم عن Data Tybes
بداية لازم نعرف ان Data Tybes دى نوعين :
Premitive and None Premitive
1-Premitive data Tybe
دى انواع البيانات اللى احنا عارفين حجمها زى مثلا :
Integers
Floating Point
Char ..........
وطبعا الحاجات دى بتتخزن فى مكان فى Memory اسمه Stack
2- None Premitive Data Tybe
دى انواع البيانات اللى احنا مش عارفين حجمها زى مثلا :
Objects - Classes
وطبعا الحاجات دى بتتخزن فى مكان فى Memory اسمه Heap
طيب لو جينا كده نفصل اكتر ونجمع شوية تفاصيل عن انواع البيانات
بلا بينا
زى ما الباشمهندس أحمد النهارده قال ان انواع البيانات
تنقسم تفصيليا الى أربعة انواع بنستخدمها
1- فصيلة الاعداد الصحيحة ( Integers ) :
وتحت هذا الاسم يندرج ثلاثة انواع اخرى الا وهى
Int >>>>>>>>> 4 byte >>>>>>>32 bit
short >>>>>>>>2 byte>>>>>>>>> 16 bit
Long>>>>>>>>>8 byte>>>>>>>>>64 Bit
Byte >>>>>>>>>> 1 byte >>>>>>>> 8 bit
طبعا ياجماعة أحنا عارفين ان Java Is Independant Platform
يعنى لو انا روحت عملت برنامج مثلا جمع رقمين وعملت مثلا متغير x من النوع Int
هتكون مساحة Int >>>>> 4 byte
على اى الة حاسب وعلى اى نظام تشغيل ثابته
بينما فى لغة C++
data tybe depends on the platform and The operatin system
يعنى فى مثلا
on 16 - bit processor integer is >>>>2 - byte
4byte <<<<<< on 32- bit processor integer is
يعنى المقصد انى أقول ان مساحة نوع البيانات متغيرة بتغير الالة اللى بشتغل عليها او بنغير نظام التشغيل بينما عندنا فى الجافا طبعا المساحة ثابتة
2-Floatin Point
بيقولك بقى ان اى رقم عشرى يعنى فيه حاجة اسمها الــ (fraction) ده الجزء العشرى يندرج تحت كلمة Floatin Point
Floatin Point is any number has a fraction
طيب تمام
ده بقى يه نوعين
Float >>>>>>>4 byte >>>>>>> 32 bit
Double >>>>>>8 byte >>>>>64 bit
Floating Numbers in code
1- float in code
- CODE: تحديد الكل
float x=2.5 ; // this make error "
طيب والحل ايه
- CODE: تحديد الكل
float x=2.5 f;
لاحظ وضع حرف f بعد الرقم حتى يتعرف الــCompiler على ان هذا الرقم Float وليس.... ( هقولك فى أخر الشرح )
2- double in code
لو أنا مثلا عايز أكتب متغير x من النوع double
- CODE: تحديد الكل
double x= 2.5;
وممكن كمان نكتبه كده
- CODE: تحديد الكل
double x= 2.5d;
لاحظ وضع حرف d بعد الرقم
وفى النهاية نحن دائما فى البرامج بتاعتنا هنستخدم double وذلك للانه دقيق جدا عن float تقديرا للعمليات
3- character
"char"
a single 16-bit Unicode character. It has a minimum value of '\u0000' (or 0) and a maximum value of '\uffff' (or 65,535 inclusive).
- CODE: تحديد الكل
char x='b';//
ويوضع بين Single Quote
وللتوضيح اليكم هذا المثال :
- CODE: تحديد الكل
public class Main {
public static void main(String[] args) {
char ch1 = 'a';
char ch2 = 65;
System.out.println("Value of char variable ch1 is :" + ch1);
System.out.println("Value of char variable ch2 is :" + ch2);
}
}
/*
Value of char variable ch1 is :a
Value of char variable ch2 is :A
*/
we use char to exoress Escape Sequence for special charcter
- CODE: تحديد الكل
\b>>>>>>>> Backspacee
\n>>>>>> LineFeaad
\t>>>>>>>>>Tap
\"">>>>>>>> Double Qoute
\'>>>>>>> Single Qoute
\\>>>>>>> backslash
4- Boolean data Tybe
عبارة عن true ----- flase
used to evaluate Logical Conditons
ملاحظة :
فى لغة C++
0>>>>> flase
1 >>>>> true
ولكن عندنا مينفعش نعمل كده
we cant convert between Integers and Boolean values
يعنى ببساطة فى لغة C++
- CODE: تحديد الكل
if (x=0) // this mean if (fales)
اما فى لغة الجافا :
- CODE: تحديد الكل
if (x=0) // this make error
كده خلصنا او نقطة من الموضوع بتاعنا
_______________________________
بسم الله الرحمن الرحيم
2 - Varaibles
to declare variabe we should put The Data Tybe first Then put the name of the variable
تعالوا نعمل متغير اسمه x من النوع Int
- CODE: تحديد الكل
int x;
ملحوظة :
varaible must Begin with Letter then Digits as you like
يعنى انا ممكن أعرف متغيرات كده
int x1,x2,x3;
ولكن مينفعش أعمل كده
- CODE: تحديد الكل
int 1x,2x,3x; This is error
ملحوظة : يفضل اننا لما نعمل متغير انه يكون بيشير على نوع البيانات اللى هو منها ..........
programmers prefer to write the name of variable refer to its data tybe
- CODE: تحديد الكل
String str_Name="hamada";
اسم المتغير (str_Name ) من النوع String
Initiilizing variable
after we declare the variable we should initilized it by assignment operator
يعنى لو انا عملت كده
- CODE: تحديد الكل
public class Main {
public static void main(String[] args) {
int x;
System.out.println(x);
}
}
ده هيطلع Error
variable x might have been initilaized
ملحوظة هامه :
الفرق بين Declaration and Difinition
اولا : فى لغة Java
لا فرق بين الكلمتين
انا لما بعمل
- CODE: تحديد الكل
int i=5;
نقول على العملية دى Decleration or Definirion
ثانيا : بالنسبة للغة C++
iهناك فرق شاسع الا وهو
- CODE: تحديد الكل
int i ; // this called Decleration
- CODE: تحديد الكل
int i=10; // this called Definition
,اخيرا فى هذه النقطة هنتكلم عن الثابت ( Constant) :
الثبت : معناه او استخدامه
اننا عايز ادى قيمة لمتغير ومغيرهاش وتفضل معاه وقت كبير سواء هستخدم هذه القيمة على مستوى Class واحد
او على مستوى البرنامج بتاعى
طيب استخدمه ازاى فى الكود بتاعى هنشوف مع بعض دلوقتى :
اولا : بنستخدم Keyword اسمها Final
final data tybe variable name = value
انا عاوز اعمل متغير ياخد قيمه ثابته من النوع int
- CODE: تحديد الكل
final int x=10;
ملاحظات سريعة ولذيذه كده :
1 - يكتب اسم المتغير الثايت UPPERCASE يعنى حروفه كلها Capital
2- لو انا هستخدم أكتر من ثابت فى الربنامج بتاعى يفضل انى اعمل
class ونسميه Constants
ونضع فيه كل Constants ( الثوابت بتاعتنا )
بس بعرف الثابت كده
public static final datatybe = value
ناخد مثال ونشوف كده
- CODE: تحديد الكل
class Constants02{
public static void main(String[] args){
System.out.println("pi = " + Constants.pi);
System.out.println("e = " + Constants.e);
}//end main
}//end class Constants02
//=======================================================//
class Constants{
public static final double pi = 3.14159; // Declaretion of the Constant
public static final double e = 2.71828; // Decleration of another constant
}//end class Constants
كده أحنا خلصنا الجزء بتاع Variables كاملا
_______________________
بسم الله الرحمن الرحيم تكملة للشرح بتاع زميلي شهبوب
ان شاء الله دلوقتي هانشرح ال
3-Structure Programming
(Loops - Conditions)
اول حاجه هانتكلم عن Loops
اول حاجه ان اللوب بتستخدم لما نكون عاوزين نكرر حاجه اكتر من مره
زي مثلا عندنا جمله مثلا عاوزين نطبعها اكتر من مره
احنا عندنا ثلاث جمل بنستخدمهم لما نيجي نعمل لووب
اول جمله و هي For تاني واحده While ثالثا Do While
__________
First : For
How To Write For?
- CODE: تحديد الكل
for(Initial Value ; Limit ; Step)
{
Our Statements;
}
مثلا عاوزين نطبع كلمة Java اربع مرات هيكون الكود كالتالي
- CODE: تحديد الكل
public class For
{
public static void main(String args[])
{
for(int x=0 ; x<4>
{
System.out.println("Java");
}
}
}
احنا هنا عرفنا متغير اسمه X عاي اساس انه int و ادينالو Initial Value بصفر
وحطينا شرط التوقف ان الx تكون اقل من اربعه
و تزيد بمقدار خطوه كل مره
Now We Take EX.
NastedFor
احنا دلوقتي عاوزين برنامج يطبع الكود بالشكل دا
- CODE: تحديد الكل
*
**
***
****
*****
فالكود هيكو كالتالي
- CODE: تحديد الكل
for(int x=0;x<=4;x++)
{
for(int j=0;i<=x ;j++)
{
System.out.print("*");
} // End Of For loop
System.out.println();
} // End Of For loop
احنا هنا في ال for اﻷولي عرفنا ال ء عادي و حطينا ال limit انه يكون اقل من او يساوي 4
ف دلوقتي هو كده دخل ال for دي بقيمه صفر هيبدا يخش دلوقتي علي الفور ال جوه
هيلاقي ان ال j بصفر و انه اصغر من x
هيعمل check لو لئي الصفر اقل من قيمة ال x هيطبع اول مره
و بعدين يخش من اﻷول علي الفور الأولي يخش بقيمه واحد
و يخش علي الفور الي جوه هيلاقي الواحد اقل من اربعه هيقو بادئ من اﻷول هينفذ صفر و واحد فيطبع مرتين
و هكذا كل مره هتزيد واحده لغاية لما الشرط خلص و يخرج بره الفورتين دول خالص
__________
Second :while Loop
اول حاجه نقول الفرق بين ال
- CODE: تحديد الكل
While{
}
و ال
- CODE: تحديد الكل
do{
}
While();
ان ال do while بتنفذ ال الشرط مره واحده علي اﻷقل قبل ما ابدا اعمل check علي الشرط
مثال
- CODE: تحديد الكل
int x =10 , y = 0;
while(x!=0)
{
x--;
y++;
System.out.print(x );
System.out.println( y);
}
دا مثال هيطبع العد العكسي بتاع الx لغاية ما توصل ل 0
و الزياده بتاعة ال y لغية ماتوصل ل 10
مثال علي ال do while
- CODE: تحديد الكل
int x =0 , y = 1;
do{
x+=5;
}
while(y==0);
System.out.println(x);
المفروض عندنا هنا مايطبعش حاجه خالص عشان الشرط مش متحقق الي هو
ان ال y==0 ﻷن عندي ال y =1
بس عشان دي do while هتنفذ الشرط مره واحده قبل ما تعمل check
عشان كدجا هيطبع عندي x=5 مره واحده بس
دا كدا شرح مبسط لجمل التلاته
________________
Second : Conditions
________________
في ال conditions
عندي جملتين اول جمله عندي هي ال IF تاني حاجه هي ال Switch
اولا ال if
- CODE: تحديد الكل
if( condition mus br Boolean )
{
our code;
}
استخدمها لما اكون عاوز انفذ جمله معينه لو الشرط الي انا حطه اتنفذ يطبع الجمله دي لو ﻷ هيعديها ولا كانه شاف حاجه
مثال
- CODE: تحديد الكل
int x = 5; // Try With x=4; and see answeer
if(x==5)
{
x++;
System.out.println(x);
}
else
{
x--;
System.out.println(x);
}
دا مثال انا مديله x=5 هيشوف اذا لقي ال x=5 هيزودها بواحد و يطبع
لو ملأهاش بخمسه هينقصها واحد و يطبع
تاني نوع من ال if هو ال nasted if
و هي اني لو عاوز اعكل check علي امتر من شرط هحط else if
مثال
- CODE: تحديد الكل
int x = 5; // Try With x=4; and With x=6 see answeer
if(x<=4)
{
x++;
System.out.println(x);
}
else if(x>=6)
{
x*=6;
System.out.println(x);
}
else
{
System.out.println("Wrong");
}
int x = 5; // Try With x=4; and With x=6 see answeer
if(x<=4)
{
x++;
System.out.println(x);
}
else if(x>=6)
{
x*=6;
System.out.println(x);
}
else
{
System.out.println("Wrong");
}
في المثال السابق انا عامل شرطين اﻷول ان الرقم اقل من او يساوي اربعه
و
و التاني ان الرقم اكبر من او يساوي سته
لو طبع حاجه غير كده هيكتب كلمة Wrong
اخيرااااااااااااااااااا switch
هي تعتبر قريبه من ال nasted if
مثلا ناخد مثال فيه فصول السنه
هندخل قيمه معينه و نشوف ال cases بتاعتها
نخش في المثال احسن
- CODE: تحديد الكل
int month = 4;
String season;
switch (month) {
case 12:
case 1:
case 2:
season = "Winter";
break;
case 3:
case 4:
case 5:
season = "Spring";
break;
case 6:
case 7:
case 8:
season = "Summer";
break;
case 9:
case 10:
case 11:
season = "Autumn";
break;
default:
season = "Bogus Month";
}
System.out.println("April is in the " + season + ".");
انا مدخل القيمه باربعه عيخش يدور في ال cases الي انا مدخلها لغية ما يلاقي ال ال case دي و ينفذها و بعدين يعمل break للباقي
ارجو ان الشرح يكون سهل و وافي و مكنش طولت عليكو
في اﻷخر احب اقول اهم حاجه الا وهي التاسكات
1) print stars
*
**
***
****
*****
*****
****
***
**
*
using for , while , do while
2) search how to take parameters from user
3)how to reverse word like (Java)
i need it print as
avaJ
ارجو اﻷهتمام بالتاسكات

0 comments on "Java Team ------- The Second Lesson"
Post a Comment