إزالة واستبدال العناصر في القوائم (Remove and Replace in List) في Dart
عند التعامل مع القوائم في Dart، هناك العديد من الطرق لإزالة العناصر أو استبدالها حسب الحاجة. توفر Dart وظائف مرنة لمعالجة هذه العمليات بسهولة.
1. إزالة العناصر من القائمة (Remove Items from List)
a) remove()
- الوصف: تزيل أول ظهور لعنصر معين من القائمة.
مثال:
void main() {
List<String> fruits = ['Apple', 'Banana', 'Mango', 'Apple'];
fruits.remove('Apple');
print(fruits); // ['Banana', 'Mango', 'Apple']
}
Dartb) removeAt()
- الوصف: تزيل العنصر الموجود في فهرس معين.
مثال:
void main() {
List<int> numbers = [10, 20, 30, 40];
numbers.removeAt(2); // إزالة العنصر في الفهرس 2
print(numbers); // [10, 20, 40]
}
Dartc) removeLast()
- الوصف: تزيل العنصر الأخير من القائمة.
مثال:
void main() {
List<String> colors = ['Red', 'Blue', 'Green'];
colors.removeLast();
print(colors); // ['Red', 'Blue']
}
Dartd) removeWhere()
- الوصف: تزيل جميع العناصر التي تحقق شرطًا معينًا.
مثال:
void main() {
List<int> numbers = [5, 10, 15, 20, 25];
numbers.removeWhere((number) => number > 15);
print(numbers); // [5, 10, 15]
}
Darte) clear()
- الوصف: تزيل جميع العناصر من القائمة.
مثال:
void main() {
List<String> animals = ['Cat', 'Dog', 'Bird'];
animals.clear();
print(animals); // []
}
Dart2. استبدال العناصر في القائمة (Replace Items in List)
a) باستخدام الفهرس
- الوصف: تعيين قيمة جديدة في فهرس معين.
مثال:
void main() {
List<String> fruits = ['Apple', 'Banana', 'Mango'];
fruits[1] = 'Orange'; // استبدال Banana بـ Orange
print(fruits); // ['Apple', 'Orange', 'Mango']
}
Dartb) replaceRange()
- الوصف: تستبدل نطاقًا من العناصر داخل القائمة.
مثال:
void main() {
List<int> numbers = [1, 2, 3, 4, 5, 6];
numbers.replaceRange(2, 5, [10, 20, 30]); // استبدال العناصر من الفهرس 2 إلى 4
print(numbers); // [1, 2, 10, 20, 30, 6]
}
Dartc) fillRange()
- الوصف: تملأ نطاقًا معينًا بقيمة واحدة.
مثال:
void main() {
List<int> numbers = [1, 2, 3, 4, 5];
numbers.fillRange(1, 4, 0); // ملء العناصر من الفهرس 1 إلى 3 بالقيمة 0
print(numbers); // [1, 0, 0, 0, 5]
}
Dartd) setAll()
- الوصف: تعيين قيم جديدة لعناصر متعددة باستخدام قائمة أخرى.
مثال:
void main() {
List<int> numbers = [1, 2, 3, 4, 5];
numbers.setAll(1, [10, 20, 30]); // استبدال العناصر بدءًا من الفهرس 1
print(numbers); // [1, 10, 20, 30, 5]
}
Dartملخص
- لإزالة العناصر: استخدم
remove()
وremoveAt()
وremoveWhere()
بناءً على الحالة. - لاستبدال العناصر: استخدم
fillRange()
وreplaceRange()
وsetAll()
. - كل طريقة توفر مرونة في تعديل البيانات داخل القوائم.