- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to swap or exchange objects in Java?
Java uses call by value while passing parameters to a function. To swap objects, we need to use their wrappers. See the example below −
Example
public class Tester{ public static void main(String[] args) { A a = new A(); A b = new A(); a.value = 1; b.value = 2; //swap using objects swap(a,b); System.out.println(a.value +", " + b.value); Wrapper wA = new Wrapper(a); Wrapper wB = new Wrapper(b); //swap using wrapper of objects swap(wA,wB); System.out.println(wA.a.value +", " + wB.a.value); } public static void swap(A a, A b){ A temp = a; a = b; b = temp; } public static void swap(Wrapper wA, Wrapper wB){ A temp = wA.a; wA.a = wB.a; wB.a = temp; } } class A { public int value; } class Wrapper { A a; Wrapper(A a){ this.a = a;} }
Output
1, 2 2, 1
Advertisements