A Matrix is a rectangular array. The elements are arranged in the rows and columns. In this tutorial, we will look at some matrix programs in Java.
Graphical Representation of Matrix
Matrix
Matrix in Java
We can implement a matrix using two dimensional array in Java. The element at row “r” and column “c” can be accessed using index “array[r]“.
Matrix Programs in Java
Since we are using two-dimensional arrays to create a matrix, we can easily perform various operations on its elements. In this tutorial, we will learn how to create a matrix from user input. Then we will add, subtract, and multiply two matrices and print the result matrix on the console.
1. Adding Two Matrix
Here is the simple program to populate two matrices from the user input. Then add its elements at the corresponding indices to get the addition of the matrices. Finally, we will print the sum of the matrices.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
package com.journaldev.examples; import java.util.Scanner; public class MatrixPrograms { public static void main(String[] args) { System.out.println("Please enter the rows in the matrix"); Scanner sc = new Scanner(System.in); int row = sc.nextInt(); System.out.println("Please enter the columns in the matrix"); int column = sc.nextInt(); int[][] first = new int[row][column]; int[][] second = new int[row][column]; for (int r = 0; r < row; r++) { for (int c = 0; c < column; c++) { System.out.println(String.format("Enter first[%d][%d] integer", r, c)); first[r] = sc.nextInt(); } } for (int r = 0; r < row; r++) { for (int c = 0; c < column; c++) { System.out.println(String.format("Enter second[%d][%d] integer", r, c)); second[r] = sc.nextInt(); } } // close the scanner sc.close(); // print both matrices System.out.println("First Matrix:n"); print2dArray(first); System.out.println("Second Matrix:n"); print2dArray(second); // sum of matrices sum(first, second); } // below code doesn't take care of exceptions private static void sum(int[][] first, int[][] second) { int row = first.length; int column = first[0].length; int[][] sum = new int[row][column]; for (int r = 0; r < row; r++) { for (int c = 0; c < column; c++) { sum[r] = first[r] + second[r]; } } System.out.println("nSum of Matrices:n"); print2dArray(sum); } private static void print2dArray(int[][] matrix) { for (int r = 0; r < matrix.length; r++) { for (int c = 0; c < matrix[0].length; c++) { System.out.print(matrix[r] + "t"); } System.out.println(); } } } <img class="alignnone wp-image-30149 size-full" src="http://all-learning.com/wp-content/uploads/2019/08/adding-two-matrices1.png" alt="adding-two-matrices" width="1200" height="938" /> Adding Two Matrices |
2. Subtracting Two Matrices
Here is the function to subtraction second matrix elements from the first matrix and then print the result matrix.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
private static void subtract(int[][] first, int[][] second) { int row = first.length; int column = first[0].length; int[][] sum = new int[row][column]; for (int r = 0; r < row; r++) { for (int c = 0; c < column; c++) { sum[r] = first[r] - second[r]; } } System.out.println("nSubtraction of Matrices:n"); print2dArray(sum); } |
3. Multiplying Two Matrices
Below method will multiply the matrix elements and print the result matrix.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
private static void multiply(int[][] first, int[][] second) { int row = first.length; int column = first[0].length; int[][] sum = new int[row][column]; for (int r = 0; r < row; r++) { for (int c = 0; c < column; c++) { sum[r] = first[r] * second[r]; } } System.out.println("nMultiplication of Matrices:n"); print2dArray(sum); } |
Reference: Wikipedia