Arrays Basics

--

Understanding array programs in Java involves grasping the concepts of array declaration, initialization, accessing elements, and iterating through arrays. Additionally, understanding how to manipulate arrays using loops and methods is crucial. Below, I’ll break down the essential components of array programs in Java and provide explanations with examples.

1. Array Declaration and Initialization

Declaration:

To declare an array in Java, you specify the type of the elements followed by [] and then the name of the array.

int[] numbers;

Initialization:

Arrays can be initialized at the time of declaration or later using the new keyword.

int[] numbers = new int[5];  // Initialize with size 5
int[] numbers = {1, 2, 3, 4, 5};  // Initialize with values

2. Accessing Array Elements

You can access array elements by their index. The index starts at 0 for the first element and goes up to length - 1.

int[] numbers = {10, 20, 30, 40, 50};
int firstElement = numbers[0]; // Accessing the first element
int thirdElement = numbers[2]; // Accessing the third element

3. Iterating Through Arrays

You can use loops like for and foreach to iterate through arrays.

Using for Loop:

int[] numbers = {10, 20, 30, 40, 50};
for (int i = 0; i < numbers.length; i++) {
System.out.println(numbers[i]);
}

Using foreach Loop:

int[] numbers = {10, 20, 30, 40, 50};
for (int number : numbers) {
System.out.println(number);
}

4. Manipulating Arrays

Arrays can be modified by assigning new values to their elements or using built-in methods for sorting, searching, etc.

Assigning New Values:

int[] numbers = {10, 20, 30, 40, 50};
numbers[1] = 25; // Modify the second element

Sorting:

int[] numbers = {50, 10, 40, 30, 20};
Arrays.sort(numbers); // Sort the array

Searching:

int[] numbers = {10, 20, 30, 40, 50};
int index = Arrays.binarySearch(numbers, 30); // Search for 30

Example: Program to Find the Sum of Array Elements

public class ArrayExample {

public static void main(String[] args) {

int[] numbers = {10, 20, 30, 40, 50};

int sum = 0;

for (int number : numbers) {
sum += number;
}

System.out.println("Sum of array elements: " + sum);
}
}

In this example:

  • We declare and initialize an array numbers.
  • We use a foreach loop to iterate through the array and calculate the sum of its elements.
  • Finally, we print the sum.

> Swapping elements in an array with temp variable

We can swap two elements in an array by using a temporary variable to hold one of the elements.

        int a = 5;
int b = 10;
int temp;


// Swap logic using temporary variable
temp = a;
a = b;
b = temp;
public class ArraySwapExample {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};

// Swap elements at index 1 and index 3
int temp = numbers[1];
numbers[1] = numbers[3];
numbers[3] = temp;

// Print the array after swapping
for (int number : numbers) {
System.out.println(number);
}
}
}

Without Using a Temporary Variable

public class ArraySwapExample {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};

// Swap elements at index 1 and index 3 without using temp variable
numbers[1] = numbers[1] + numbers[3];
numbers[3] = numbers[1] - numbers[3];
numbers[1] = numbers[1] - numbers[3];

// Print the array after swapping
for (int number : numbers) {
System.out.println(number);
}
}
}

here is swap logic without temp variable

        int a = 5;
int b = 10;

a = a + b; // a becomes 15
b = a - b; // b becomes 5
a = a - b; // a becomes 10

Finding the Sum of Array Elements

public class ArrayExampleJava7 {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};
int sum = 0;

for (int i = 0; i < numbers.length; i++) {
sum += numbers[i];
}

System.out.println("Sum of array elements: " + sum);
// Output: Sum of array elements: 15
}
}
import java.util.Arrays;

public class ArrayExampleJava8 {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};

int sum = Arrays.stream(numbers).sum();

System.out.println("Sum of array elements: " + sum);
// Output: Sum of array elements: 15
}
}

Finding the Maximum Element in an Array

public class ArrayExampleJava7 {
public static void main(String[] args) {

int[] numbers = {10, 20, 5, 15, 25};
int max = numbers[0];

for (int i = 1; i < numbers.length; i++) {
if (numbers[i] > max) {
max = numbers[i];
}
}

System.out.println("Maximum element in the array: " + max);
// Output: Maximum element in the array: 25
}
}
import java.util.Arrays;

public class ArrayExampleJava8 {
public static void main(String[] args) {
int[] numbers = {10, 20, 5, 15, 25};

int max = Arrays.stream(numbers).max().getAsInt();

System.out.println("Maximum element in the array: " + max);
// Output: Maximum element in the array: 25
}
}

--

--

No responses yet