تستخدم المصفوفات لتخزين مجموعات بيانات متماثلة لتجميعها كوحدة واحدة. وهو مجموعة ثابتة من نفس نوع البيانات التي يتم تخزينها بشكل متلاصق والتي يمكن الوصول إليها من قبل فهرس نحدد طولها، ونحن يمكن تهيئة المصفوفات مع البيانات.
المصفوفة الرقمية Integer Array
التصريح عن المصفوفة الرقمية من نوع INTEGER
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim array As Integer() = New Integer(3) {}
array(0) = 10
array(1) = 20
array(2) = 30
array(3) = 40
For i As Integer = 0 To array.Length - 1
MessageBox.Show(array(i))
Next
End Sub
End Class
Dim array As Integer() = New Integer() {10, 20, 30, 40}
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer
Dim week(6) As String
week(0) = "Sunday"
week(1) = "Monday"
week(2) = "Tuesday"
week(3) = "Wednesday"
week(4) = "Thursday"
week(5) = "Friday"
week(6) = "Saturday"
For i = 0 To week.Length - 1
MsgBox(week(i))
Next
End Sub
End Class
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sArray As Char() = New Char(4) {}
sArray(0) = "A"
sArray(1) = "B"
sArray(2) = "C"
sArray(3) = "D"
sArray(4) = "E"
For i As Integer = 0 To sArray.Length - 1
MessageBox.Show(sArray(i).ToString())
Next
<b><u>Array.Resize(sArray, 3)</u></b>
For i As Integer = 0 To sArray.Length - 1
MessageBox.Show(sArray(i).ToString())
Next
End Sub
End Class
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim array As Integer() = {10, 30, 50}
'array declaration
For Each element As Integer In array
MsgBox(element)
Next
End Sub
End Class
dim mixedArray as object() = new object(4) mixedArray(0)=10
mixedArray(1)="Jack"
mixedArray(2)=true
mixedArray(3)=System.DateTime.Now
المصفوفة الرقمية Integer Array
التصريح عن المصفوفة الرقمية من نوع INTEGER
Dim array As Integer() = New Integer(3) {}
array(0) = 10
array(1) = 20
array(2) = 30
array(3) = 40
array(0) = 10
array(1) = 20
array(2) = 30
array(3) = 40
فى الكود السابق تم التصريح عن مصفوفة رقمية مكونة من 4 عناصر وقمنا باسناد القيم لها عن طريق الفهرس
يمكن الولوج الى عناصر المصفوفة عن طريق loop على النحو التالى : -
يمكن التصريح عن المصفوفة وأسناد العناصر لها بهذه الطريقة
مع ملاحظة ان الكود السابق لن يتم تحديد طول المصفوفة به وسيقوم الفيجوال بيسك بتحديده
كيف يتم تحديد طول المصفوفة ؟
يتم استخدام الطريقة Array.Length لتحديد طول المصفوفة
مصفوفة النصوص String Array
التصريح عن وتهيئة المصفوفة النصية
Dim week(6) As String
ويعنى الكود السابق ان تم التصريح عن مصفوفة اسمها week ولها سبعة عناصر من نوع string
اسناد القيم للمصفوفة
week(0) = "Sunday"
week(1) = "Monday"
.....
الدخول لعناصر المصفوفة
Dim weekName as String = week(1)
في البرنامج التالي، نعلن مصفوفة نسميها "week" من سبعة قيم نصية وتعيين القيم السبعة كأيام في الأسبوع. الخطوة التالية هي استرداد عناصر المصفوفة باستخدام حلقة. للعثور على نهاية المصفوفة استخدمنا الدالة length ....
تغيير حجم المصفوفة
يتم استخدام الطريقة Array.Resize لزيادة حجم المصفوفة كالتالى :-
Array.Resize(sArray, 3)
الكود السابق يقوم بزيادة حجم المصفوفة بثلاثة عناصر
استخدام Foreach مع المصفوفات
فرز المصفوفات Array Sort
تستخدم المصفوفات لتخزين مجموعات بيانات مماثلة لتجميعها كوحدة واحدة. بدلا من الإعلان عن متغيرات فردية مثل ar1 و ar2 و ar3 وما إلى ذلك، فإنك تعلن متغير مصفوفة واحد مثل الأرقام واستخدام أر (0)arr و (1)arr و (2)arr وما إلى ذلك لتمثيل المتغيرات الفردية , يتم الوصول إلى عنصر معين في المصفوفة بواسطة فهرس كما تم عرضه سابقاً .
ويتم فرز عناصر المصفوفة الرقمية عن طريق الكود التالى
Dim arr As Integer() = New Integer() {3, 1, 4, 5, 2}
Array.Sort(arr)
For Each str As Integer In arr
MsgBox(str)
Next
وفرز عناصر المصفوفة النصية
Dim ArrStr As String() = New String() {"c", "a", "d", "b"}
Array.Sort(ArrStr)
For Each str As String In ArrStr
MsgBox(str)
Next
الاكواد السابقة تقوم بترتيب المصفوفة تصاعدياً ولترتيبها تنازلياً نستخدم الطريقة Array.reverse
Dim arr As Integer() = New Integer() {3, 1, 4, 5, 2}
Array.Sort(arr)
Array.Reverse(arr)
For Each str As Integer In arr
MsgBox(str)
Next
المصفوفات النصية
Dim ArrStr As String() = New String() {"c", "a", "d", "b"}
Array.Sort(ArrStr)
Array.Reverse(ArrStr)
For Each str As String In ArrStr
MsgBox(str)
Next
انشاء مصفوفة باكثر من نوع بيانات muliple data type array
يمكنك إنشاء مصفوفة تحتوي على عناصر من أنواع بيانات مختلفة عند تعريف المصفوفة ككائن. بما أن System.Object هو الفئة الأساسية لجميع الأنواع الأخرى، يمكن أن يكون عنصر في مصفوفة من الكائنات مرجع إلى أي نوع آخر من الكائنات.
المصفوفات الديناميكية dynamic array
المصفوفة الديناميكية يمكن زيادة عناصرها اثناء تشغيل البرنامج عندما لا نعرف عدد العناصر الذى سوف يتم انشائها بالمصفوفة
Dim scores() As Integer
زيادة عناصر المصفوفة وحذف قيمة جميع عناصرها
ReDim scores(1)
زيادة عناصرالمصفوفة والاحتفاظ بكل قيم عناصرها
ReDim Preserve scores(2)
مثال
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer
Dim scores() As Integer
ReDim scores(1)
scores(0) = 100
scores(1) = 200
For i = 0 To scores.Length - 1
MsgBox(scores(i))
Next
ReDim Preserve scores(2)
scores(2) = 300
For i = 0 To scores.Length - 1
MsgBox(scores(i))
Next
End Sub
End Class
ليست هناك تعليقات:
اضافة تعليق