عرض مشاركة واحدة
#1  
قديم 23 - 7 - 2015, 05:28 AM
مزيونة الخليج غير متواجد حالياً
Oman     Female
SMS ~ [ + ]
[تعرف وتعلم حالتى .. ما تختلف عن حالتك
أصبحت لى توأم حياة .. بأفراحك تكمل فرحتى
 عضويتي » 314
 جيت فيذا » 3 - 4 - 2011
 آخر حضور » 18 - 7 - 2017 (07:05 PM)
 فترةالاقامة » 4977يوم
 المستوى » $64 [♥ Bأ©-Yأھu ♥♥ Bأ©-Yأھu ♥♥ Bأ©-Yأھu ♥♥ Bأ©-Yأھu ♥♥ Bأ©-Yأھu ♥]
  النشاط اليومي » 2.01
مواضيعي » 554
الردود » 9429
عددمشاركاتي » 9,983
نقاطي التقييم » 249
 ابحث عن » مواضيعي ردودي
تلقيت إعجاب » 1
الاعجابات المرسلة » 0
 الاقامه »
 حاليآ في » في وسط ابداعاتي الشعرية
دولتي الحبيبه » دولتى الحبيبه
جنسي  »
العمر  » سنة
الحالة الاجتماعية  »
 التقييم » مزيونة الخليج has a spectacular aura aboutمزيونة الخليج has a spectacular aura aboutمزيونة الخليج has a spectacular aura about
مشروبى المفضل  » مشروبى المفضل
الشوكولاته المفضله  » الشوكولاته المفضله baunty
قناتك المفضلة  » قناتك المفضلة
ناديك المفضل  » ناديك المفضل
سبارتي المفضله  » سبارتي المفضله
 
الوصول السريع

عرض البوم صور مزيونة الخليج عرض مجموعات مزيونة الخليج عرض أوسمة مزيونة الخليج

عرض الملف الشخصي لـ مزيونة الخليج إرسال رسالة زائر لـ مزيونة الخليج جميع مواضيع مزيونة الخليج

الدرس السادس المصفوفات

Facebook Twitter
ملاحظة هامة لقراء الموضوع ♥ غير مسجل ♥
قبل قراءتك للموضوع نود إبلاغك بأنه قد يحتوي الموضوع على عبارات او صور لا تناسب البعض
فإن كنت من الأعضاء التي لا تعجبهم هذه المواضيع .. وتستاء من قرائتها .. فنقدم لك
باسم إدارة الشبكة وكاتب الموضوع .. الأسف الشديد .. ونتمنى منك عدم قراءة الموضوع
وفي حال قرائتك للموضوع .. نتمنى منك ان رغبت بكتابة رد
أن تبتعد بردودك عن السخرية والشتائم .. فهذا قد يعرضك للطرد أو لحذف مشاركتك
إدارة شبكة ( همس الشوق )

 



السلام عليكم ورحمه الله وبركاته
اخواني واخواتي اعضاء وزوار شبكة همس الشوق
اليوم درسنا عن :

المصفوفات
المصفوفة هي كائن حاوي، يحتوي على عدد محدد من العناصر ذات صنف واحد. يتم تحديد طول المصفوفة عند إنشائها. بعد الإنشاء، طول المصفوفة يبقى تابثا. لقد سبق ورأينا مثال عن المصفوفات، في الطريقة main لبرنامج "Hello World!". سنقوم الآن بالتعمق أكثر في المصفوفات.


كل قيمة في المصفوفة تسمى "عنصر"، ويتم الوصول لكل عنصر باستعمال مؤشره الرقمي. كما يظهر في الصورة، الترقيم يبدأ من الصفر 0. يتم الوصول للعنصر التاسع مثلا باستعمال المؤشر 8.

البرنامج التالي، ArrayDemo، يقوم بإنشاء مصفوفة من الأعداد الصحيحة، يملأها ببعض القيم، ويطبع قيمة كل عنصر.
class ArrayDemo {
public static void main(String[] args) {
int[] anArray; // إعلان مصفوفة من الأعداد الصحيحة

anArray = new int[10]; // حجز الذاكرة ل 10 أعداد صحيحة

anArray[0] = 100; // تهيئة العنصر الأول
anArray[1] = 200; // تهيئة العنصر الثاني
anArray[2] = 300; // ...
anArray[3] = 400;
anArray[4] = 500;
anArray[5] = 600;
anArray[6] = 700;
anArray[7] = 800;
anArray[8] = 900;
anArray[9] = 1000;

System.out.println("Element at index 0: " + anArray[0]);
System.out.println("Element at index 1: " + anArray[1]);
System.out.println("Element at index 2: " + anArray[2]);
System.out.println("Element at index 3: " + anArray[3]);
System.out.println("Element at index 4: " + anArray[4]);
System.out.println("Element at index 5: " + anArray[5]);
System.out.println("Element at index 6: " + anArray[6]);
System.out.println("Element at index 7: " + anArray[7]);
System.out.println("Element at index 8: " + anArray[8]);
System.out.println("Element at index 9: " + anArray[9]);
}
}
مخرج البرنامج هو كالتالي :
Element at index 0: 100
Element at index 1: 200
Element at index 2: 300
Element at index 3: 400
Element at index 4: 500
Element at index 5: 600
Element at index 6: 700
Element at index 7: 800
Element at index 8: 900
Element at index 9: 1000

في مواقف برمجية واقعية، سنستعمل في الغالب واحدة من أشكال الحلقات للمرور عبر عناصر المصفوفة، بدل كتابة كل سطر على حدة، كما في المثال السابق. لكن المثال يظهر بوضوح صياغة المصفوفات. سنتعرف على مختلف أشكال الحلقات ( for, while & do-while ) في درس التحكم في السير (سير تنفيذ الشيفرة) .

إعلان متغير يدل على مصفوفة
البرنامج السابق يعلن المصفوفة anArray باستعمال السطر التالي

int[] anArray; // إعلان مصفوفة من الأعداد الصحيحة
كما الإعلان بالنسبة للمتغيرات من أنواع أخرى، الإعلان عن مصفوفة يحتوي على مكونين: نوع المصفوفة وإسمها. نوع المصفوفة يكتب كالتالي []type ،حيث type هو نوع العناصر داخل المصفوفة؛ الأقواس المربعة هى رمز خاص يبين أن المتغير يحتوي على مصفوفة. حجم المصفوفة ليس جزءا من نوعه (لهذا السبب الأقواس المربعة فارغة).
إسم المصفوفة يمكن أن يكون أي شيء نريد، مادام يحترم القواعد كما المبينة في قسم التسمية. كما المتغيرات من باقي الأنواع، إعلان المصفوفة لا يقوم بإنشائها -- يقوم فقط بالقول للمُجَمِّع أن المتغير سيحتوي على مصفوفة من النوع المحدد.

أيضا، يمكن إعلان مصفوفات من أنواع أخرى:

byte[] anArrayOfBytes;
short[] anArrayOfShorts;
long[] anArrayOfLongs;
float[] anArrayOfFloats;
double[] anArrayOfDoubles;
boolean[] anArrayOfBooleans;
char[] anArrayOfChars;
String[] anArrayOfStrings;
يمكن أيضا وضع الأقواس المربعة بعد إسم المصفوفة:

float anArrayOfFloats[]; // لا ينصح بهذه الطريقة
لكن لا ينصح باستعمال هذه الطريقة؛ الأقواس تميز نوع المصفوفة وبالتالي يفترض أن تظهر بجانب النوع.
إنشاء، تهيئة، والوصول للمصفوفة
إحدى طرق إنشاء مصفوفة استعمال العامل new. السطر التالي من برنامج ArrayDemo ينشئ مصفوفة لها ما يكفي من الذاكرة ل 10 أعداد صحيحة، ويخزن المصفوفة في المتغير anArray.

anArray = new int[10]; // إنشاء مصفوفة من الأعداد الصحيحة
إذا كان هذا السطر غير موجود، فإن المجمع سيطبع رسالة الخطأ التالية، وستفشل عملية التجميع.
ArrayDemo.javaالدرس السادس المصفوفات Variable anArray may not have been initialized.
السطور التالية تحدد قيمة كل عنصر من المصفوفة:
anArray[0] = 100; // تهيئة العنصر الأول
anArray[1] = 200; // تهيئة العنصر الثاني
anArray[2] = 300; // ...
يتم الوصول لكل عنصر من المصفوفة باستعمال مؤشره الرقمي:
System.out.println("Element 1 at index 0: " + anArray[0]);
System.out.println("Element 2 at index 1: " + anArray[1]);
System.out.println("Element 3 at index 2: " + anArray[2]);
توجد أيضا طريقة أخرى لإنشاء وتهيئة المصفوفة:
int[] anArray = {100, 200, 300, 400, 500, 600, 700, 800, 900, 1000};
في هذه الحالة، حجم المصفوفة هو عدد العناصر الموجودة بين } و {.
يمكننا أيضا إعلان مصفوفة مصفوفات (تعرف أيضا بمصفوفة متعددة الأبعاد) وذلك باستعمال قوسين مربعين أو أكثر، مثل

String[][] names
ويتم الوصول لكل عنصر باستعمال نفس العدد من المؤشرات.
في لغة البرمجة جافا، المصفوفة متعددة الأبعاد هي ببساطة مصفوفة يحتوي كل عنصر منها على مصفوفة. هذا مختلف عن المصفوفات في C أو Fortran. كنتيجة لذلك، يمكن للسطور أن تكون مختلفة في الحجم، كما هو مبين في البرنامج MultiDimArrayDemo:

class MultiDimArrayDemo {
public static void main(String[] args) {
String[][] names = {{"Mr. ", "Mrs. ", "Ms. "},
{"Smith", "Jones"}};
System.out.println(names[0][0] + names[1][0]); //Mr. Smith
System.out.println(names[0][2] + names[1][1]); //Ms. Jones
}
}
خارج البرنامج هو:
Mr. Smith
Ms. Jones

وفي النهاية، يمكن استعمال الخاصية length لتحديد حجم مصفوفة ما. الشيفرة التالية:
System.out.println(anArray.length);
ستقوم بطباعة حجم المصفوفة.
نسخ المصفوفات
الفئة System تتوفر على الطريقة arraycopy التي تمكننا من نسخ مصفوفة إلى أخرى بطريقة فعالة.

public static void arraycopy(Object src,
int srcPos,
Object dest,
int destPos,
int length)
المعطيان من صنف Object يحددان المصفوفة التي سننسخ منها والمصفوفة التي سننسخ إليها. الثلاث معطيات من نوع int تحدد موقع البداية في المصفوفة الأصل، موقع البداية في المصفوفة الهدف، وعدد العناصر التي سيتم نسخها.
البرنامج التالي، ArrayCopyDemo، يعلن مصفوفة عناصر char، يحتوي على حروف الكلمة "decaffeinated". البرنامج يستعمل arraycopy لنسخ جزء من المصفوفة إلى مصفوفة ثانية:

class ArrayCopyDemo {
public static void main(String[] args) {
char[] copyFrom = { 'd', 'e', 'c', 'a', 'f', 'f', 'e',
'i', 'n', 'a', 't', 'e', 'd' };
char[] copyTo = new char[7];
}
}
إلى اللقاء في درس قادم


الموضوع الأصلي :‎ الدرس السادس المصفوفات || الكاتب : || المصدر : شبكة همس الشوق

 





رد مع اقتباس

رسالة لكل زوار منتديات شبكة همس الشوق

عزيزي الزائر أتمنى انك استفدت من الموضوع ولكن من اجل  منتديات شبكة همس الشوق  يرجاء ذكر المصدرعند نقلك لموضوع ويمكنك التسجيل معنا والمشاركة معنا والنقاش في كافه المواضيع الجاده اذا رغبت في ذالك فانا لا ادعوك للتسجيل بل ادعوك للإبداع معنا . للتسجيل اضغظ هنا .