Queria a ajuda de vcs neste exercicio

Crie um algoritmo que armazene dados inteiros em uma matriz de ordem cinco e exiba: toda a matriz e outra matriz formada pelos números que se encontram em posições cuja soma do índice da linha + coluna formam um número par.

package matrizes;

import java.util.Random;
import java.util.Scanner;

public class Ex03 {
	public static void main(String[] args) {
		Random random = new Random();
		Scanner teclado = new Scanner(System.in);
		// Sessão de comandos
		int soma = 0;
		int num = 2;
		int[][] mat = new int[5][5];
		for (int linha = 0; linha < mat.length; linha++) {
			for (int coluna = 0; coluna < mat.length; coluna++) {
				System.out.println("Elemento [" + linha + "x" + coluna + "]");
				mat[linha][coluna] = random.nextInt(100);

		}
	}
	System.out.println();
	// Mostrar os valores guradados na matriz
	for (int linha = 0; linha < mat.length; linha++) {
		for (int coluna = 0; coluna < mat.length; coluna++) {
			System.out.print(+mat[linha][coluna]+" ");

		}
		System.out.println();
	}
	System.out.println();
	//Numero par 
	for (int linha = 0;linha <mat.length; linha++ ){
		for(int coluna=0;coluna<mat.length;coluna++){
			mat[linha][coluna] = (linha + coluna)%2 ;
			
		}
		System.out.println();
	}
	System.out.println();
	teclado.close();
	System.exit(0);
}
}

Olá não entendi sua pergunta, posso estar interpretando errado, mas no segundo for() você deu:
for (int coluna = 0; coluna < mat.length; coluna++)
creio que seria melhor usar o " mat.[linha].length "
de qualquer forma me desculpe se eu interpretei errado.