مثال لتبديل قيمة متحولين:
import java.util.*;
class Swap_With {
public static void main(String[] args) {
int x, y, temp;// x and y are to swap
Scanner sc = new Scanner(System.in);
System.out.println("Enter the value of X and Y");
x = sc.nextInt();
y = sc.nextInt();
System.out.println("before swapping numbers: "+x +" "+ y);
/*swapping */
temp = x;
x = y;
y = t;
System.out.println("After swapping: "+x +" " + y);
System.out.println( );
}
}
اعتمدنا على متغير مؤقت temp لتخزين قيمة X السابقة ثم وضعنا قيمة Y في X (في هذه اللحظة قيمة X أصبحت تساوي قيمة Y و خسرت قيمتها السابقة) ثم نعيد تخزين قيمة المتغير المؤقت temp في Y (أي إرجاع قيمة X الأصلية)
يمكن تطبيق نفس الفكرة على المصفوفات:
public class SwapArrayElements {
public static void main(String[] args) {
int a[] = {4, 9, 7};
int t = a[0];
a[0] = a[2];
a[2] = t;
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]); //TESTING
}
}
في حال استخدام الواجهة الصفة ArrayList لتعريف المصفوفة، يمكننا اسنتخدام الدالة الجاهزة swap من الصنف Collections:
Collections.swap(ArrList, 1, 2);
أول وسيط يأخذ المصفوفة
ثم دليل العنصر الأول
ثم دليل العنصر الآخر
و سيتم تبديل قيمتهم
المثال بشكل كامل:
// Java program to swap two elements in an ArrayList
import java.util.ArrayList;
import java.util.Collections;
public class GFG {
public static void main(String a[])
{
// Create the Array List
ArrayList<String> ArrList = new ArrayList<String>();
// add the values in Array List
ArrList.add("Item 1");
ArrList.add("Item 2");
ArrList.add("Item 3");
ArrList.add("Item 4");
ArrList.add("Item 5");
// display Array List before swap
System.out.println("Before Swap the ArrayList ");
System.out.println(ArrList);
// Swapping the elements at 1 and 2 indeces
Collections.swap(ArrList, 1, 2);
// display Array List after swap
System.out.println("After Swap the ArrayList");
System.out.println(ArrList);
}
}
_____________________
ضرب مصفوفتين:
مثال لحساب فاتورة تحوي على منتجات مختلفة و يمكن شراءعدة واحدات من المنتج نفسه:
public class ShoppingCart {
public static void main(String[] args) {
int price[] = {4, 9, 7}; // سعر المنتج
int qty[] = {2, 5, 3}; // عدد المنتجات
int amt[] = new int[3]; // إجمالي المنتج
for (int i = 0; i < price.length; i++) { // حلقة لضرب العناصر المتقابلة من مصفوفتين
amt[i] = price[i] * qty[i];
System.out.println(amt[i]); //TESTING
}
}