O programa deve substtuir automaticamente os elementos pares da matriz para 0 e os elementos ímpares por 1

ALGUÉM PODE ME AJUDAR, SO NA PARTE DA TROCA DE PAR PARA 0 E IMPAR PARA .1

03 - Escreva um programa que permita uma matriz de dimensões 3x3. O programa deve substtuir
automaticamente os elementos pares da matriz para 0 e os elementos ímpares por 1.

import java.util.Scanner;
public class Main
{
public static void main (String[]args)
{
Scanner end = new Scanner (System.in);

int linhas = 3;
int colunas = 3;
int i= 0;

int[][] mat = new int[linhas][colunas];

for (int linha = 0; linha < linhas; linha++)
  {
for (int coluna = 0; coluna < colunas; coluna++)
  {
    System.out.printf ("Digite o numero da posiC'C#o [%d, %d]:\n",
		       linha, coluna);
    int valor = end.nextInt ();
    // guarda o valor na matriz
      mat[linha][coluna] = valor;

    if (i % 2 == 0){
        
    }
    else{
        
    }
        
  }
  }
// imprimir a matriz
for (int[]linha:mat)
  {
  for (int valor:linha)
  {
    // imprime o nC:mero alinhado C  direita, ocupando 3 espaC'os (para ficarem alinhados)
    System.out.printf ("%3d", valor);
  }
System.out.println ();
  }

}
}

Porquê i? Não usas em lado nenhum do teu código essa variável i

if (valor % 2 == 0){
     mat[linha][coluna] = 0; // valor é par, substitui por 0
}
else{
     mat[linha][coluna] = 1;  // valor é ímpar, substitui por 0      
}