1. Array Declaration and Initialization
Java:
// Declaration and initialization
int[] numbers = new int[5]; // Array of size 5, initialized to 0
String[] fruits = {"apple", "banana", "orange"}; // Direct initialization
// Fixed size
int[] arr = new int[10]; // Size must be specified
Python:
# Lists (dynamic arrays)
numbers = [0, 0, 0, 0, 0] # Or simply: numbers = []
fruits = ["apple", "banana", "orange"] # Direct initialization
# Dynamic size (grows as needed)
arr = [] # Empty list, can grow
2. Accessing Elements
Java:
int[] arr = {10, 20, 30, 40, 50};
System.out.println(arr[0]); // 10
System.out.println(arr[2]); // 30
arr[1] = 25; // Modify element
Python:
arr = [10, 20, 30, 40, 50]
print(arr[0]) # 10
print(arr[2]) # 30
arr[1] = 25 # Modify element
3. Negative Indexing (Python Feature)
Python Only:
arr = [10, 20, 30, 40, 50]
print(arr[-1]) # 50 (last element)
print(arr[-2]) # 40 (second to last)
print(arr[-5]) # 10 (first element)
4. Array Length
Java:
int[] arr = {1, 2, 3, 4, 5};
System.out.println(arr.length); // 5 (property, not a method)
Python:
arr = [1, 2, 3, 4, 5]
print(len(arr)) # 5 (function, not a property)
5. Adding and Removing Elements
Java:
// Arrays are fixed-size; use ArrayList for dynamic addition
ArrayList<Integer> list = new ArrayList<>();
list.add(10);
list.add(20);
list.add(30);
list.remove(1); // Remove element at index 1
System.out.println(list); // [10, 30]
Python:
# Lists are dynamic
arr = []
arr.append(10) # Add to end
arr.append(20)
arr.append(30)
arr.remove(20) # Remove by value
# or: arr.pop(1) # Remove by index
print(arr) # [10, 30]
6. Iterating Over Arrays
For Loop
Java:
int[] arr = {10, 20, 30};
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
Python:
arr = [10, 20, 30]
for i in range(len(arr)):
print(arr[i])
# Or simpler (Python way):
for num in arr:
print(num)
Enhanced For Loop
Java:
int[] arr = {10, 20, 30};
for (int num : arr) {
System.out.println(num);
}
Python:
arr = [10, 20, 30]
for num in arr:
print(num)
7. Slicing (Python Feature)
Python Only:
arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(arr[1:5]) # [1, 2, 3, 4] (indices 1 to 4, excludes 5)
print(arr[:3]) # [0, 1, 2] (from start to index 2)
print(arr[5:]) # [5, 6, 7, 8, 9] (from index 5 to end)
print(arr[-3:]) # [7, 8, 9] (last 3 elements)
print(arr[::2]) # [0, 2, 4, 6, 8] (every 2nd element)
print(arr[::-1]) # [9, 8, 7, ..., 0] (reversed)
8. Multi-Dimensional Arrays
Java:
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
System.out.println(matrix[0][1]); // 2
System.out.println(matrix.length); // 3 (rows)
System.out.println(matrix[0].length); // 3 (columns)
Python:
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(matrix[0][1]) # 2
print(len(matrix)) # 3 (rows)
print(len(matrix[0])) # 3 (columns)
9. Searching Elements
Java:
int[] arr = {10, 20, 30, 40, 50};
// Using Arrays utility
import java.util.Arrays;
int index = Arrays.binarySearch(arr, 30); // Returns 2
System.out.println(index);
// Manual search
int target = 30;
for (int i = 0; i < arr.length; i++) {
if (arr[i] == target) {
System.out.println("Found at: " + i);
}
}
Python:
arr = [10, 20, 30, 40, 50]
# Check if element exists
if 30 in arr:
print("Found")
# Get index
index = arr.index(30) # Returns 2
print(index)
# Count occurrences
count = arr.count(30) # Returns 1
10. Sorting
Java:
int[] arr = {50, 20, 40, 10, 30};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr)); // [10, 20, 30, 40, 50]
Python:
arr = [50, 20, 40, 10, 30]
arr.sort() # In-place sort
print(arr) # [10, 20, 30, 40, 50]
# Or create new sorted list
arr_sorted = sorted(arr) # Returns new sorted list
11. List Comprehensions (Python Feature)
Python Only:
# Create array of squares
squares = [x**2 for x in range(5)]
print(squares) # [0, 1, 4, 9, 16]
# Filtering
evens = [x for x in range(10) if x % 2 == 0]
print(evens) # [0, 2, 4, 6, 8]
# Transformation
doubled = [x * 2 for x in [1, 2, 3, 4]]
print(doubled) # [2, 4, 6, 8]
12. Common Array Operations
Java:
int[] arr = {1, 2, 3, 4, 5};
// Sum
int sum = 0;
for (int n : arr) sum += n;
// Average
double avg = (double) sum / arr.length;
// Max/Min
int max = Arrays.stream(arr).max().orElse(0);
int min = Arrays.stream(arr).min().orElse(0);
Python:
arr = [1, 2, 3, 4, 5]
# Sum
total = sum(arr) # 15
# Average
avg = sum(arr) / len(arr)
# Max/Min
max_val = max(arr) # 5
min_val = min(arr) # 1
Summary Table
-
Declare fixed array
- Java:
int[] arr = new int; - Python:
arr = * 5
- Java:
-
Add element
- Java: ArrayList.add()
- Python: list.append()
-
Remove element
- Java: ArrayList.remove()
- Python: list.remove() or list.pop()
-
Get length
- Java: arr.length
- Python: len(arr)
-
Iterate
- Java: for loop with index or enhanced
- Python: for-in loop (Pythonic)
-
Slice
- Java: Not built-in (use substring, etc.)
- Python: arr[start:end:step]
-
Multi-dimensional
- Java: int[][]
- Python: List of lists
-
Sort
- Java: Arrays.sort()
- Python: arr.sort() or sorted(arr)
-
Search
- Java: Arrays.binarySearch() or loop
- Python: arr.index() or
inoperator
-
Sum/Max/Min
- Java: Loops or Streams
- Python: sum(), max(), min()
-
List comprehension
- Java: Not available
- Python: [expr for x in iterable]