Skip to content

Commit a2a4de5

Browse files
committed
feat: Add ReverseANumber with overloaded methods to reverse integers and arrays
WHAT the code does: Defines a ReverseANumber class with two overloaded reverse methods: - reverse(int n): reverses the digits of a single integer using modulus and division. - reverse(int[] A): creates a new array with elements in reverse order. In main(): - Demonstrates reversing an integer (569 → 965). - Demonstrates reversing an array {2, 4, 6, 7} → {7, 6, 4, 2}. WHY this matters: Shows method overloading with different parameter types (int vs int[]). Demonstrates number reversal using arithmetic operations, reinforcing digit manipulation. Illustrates array reversal using index-based traversal. Provides an educational example bridging algorithmic logic with object-oriented design. HOW it works: For reverse(int n): - Initialize rev = 0. - While n != 0, repeatedly extract last digit (n % 10), append to rev, and reduce n by dividing by 10. - Returns reversed number. For reverse(int[] A): - Creates a new array B of same length. - Iterates from end of A to beginning, copying values into B in reverse order. main() prints both original and reversed results for clarity. Tips and gotchas: The number reversal does not handle negatives; logic could be extended for sign handling. Array reversal allocates a new array; in-place reversal could be more memory-efficient. Method overloading improves readability but requires clear signatures to avoid confusion. For production, prefer descriptive names like reverseNumber and reverseArray for clarity. Use-cases: Educational demonstration of method overloading in Java. Utility functions for digit-based problems (palindrome checks, numeric transformations). Reversing arrays for algorithmic needs (e.g., stack simulation, data reordering). Foundation for extending into generic reversal utilities. Short key: class-reverseanumber overloaded-reverse int-and-array. Signed-off-by: https://github.com/Someshdiwan <[email protected]>
1 parent dc5bde9 commit a2a4de5

File tree

1 file changed

+6
-18
lines changed

1 file changed

+6
-18
lines changed

Section10Methods/src/ReverseANumber.java

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,52 +2,40 @@ public class ReverseANumber {
22
int reverse(int n) //For Single Number.
33
{
44
int rev=0;
5-
while (n!=0)
6-
{
5+
while (n!=0) {
76
rev = rev * 10 + n % 10;
87
n=n/10;
98
}
109
return rev;
1110
}
12-
13-
int [] reverse(int A[]) //For Array of integers.
11+
int[] reverse(int A[]) //For Array of integers.
1412
{
1513
int B[] = new int[A.length];
1614

1715
for(int i=A.length-1,j=0;i>=0;i--,j++)
1816
B[j]=A[i];
1917
return B;
2018
}
21-
22-
public static void main(String[] args)
23-
{
19+
public static void main(String[] args) {
2420
ReverseANumber obj = new ReverseANumber();
25-
2621
// Reverse a single number
2722
int n = 569;
2823
int reversedNumber = obj.reverse(n);
2924

3025
System.out.println("Original number: " + n);
31-
3226
System.out.println("Reversed number: " + reversedNumber);
3327

3428
// Reverse an array of integers
3529
int A[] = {2, 4, 6, 7};
36-
3730
System.out.println("\nOriginal array:");
38-
39-
for (int num : A)
40-
{
31+
for (int num : A) {
4132
System.out.print(num + " ");
4233
}
4334

4435
int[] reversedArray = obj.reverse(A);
45-
4636
System.out.println("\nReversed array:");
47-
48-
for (int num : reversedArray)
49-
{
37+
for (int num : reversedArray) {
5038
System.out.print(num + " ");
5139
}
5240
}
53-
}
41+
}

0 commit comments

Comments
 (0)