Pode-me explicar o que está errado?

Quero criar uma matriz!

public static void main(String[] args) {
	int[][] matriz;
	int y = 0;
	int x = 0;
	
	Scanner sc=new Scanner(System.in);
	
	System.out.println("Insira o numero de linhas da matriz: ");
	x = sc.nextInt();
	
	System.out.println("Insira o numero de colunas da matriz: ");
	y = sc.nextInt();
	
	matriz = new int[x][y];
	
	System.out.println("Insira um valor:");
	double k=sc.nextInt();
	
	for(int i = 0; i < x; i++) {
		for(int j = 0; j < y; j++) {
			matriz[i][j]=k;
		}
	}
}

Cara, sua matriz é de elementos inteiros. Você está tentando atribuir uma variável do tipo double para as posições de sua matriz. Altere o tipo da variável ‘k’ para int;

Já fiz essa correcção mas continua com erro:

public static void main(String[] args) {
    int [][]matriz;
    int y =0;
    int x =0;
    Scanner sc=new Scanner(System.in);
    System.out.println("Insira o numero de linhas da matriz: ");
    x=sc.nextInt();
    System.out.println("Insira o numero de colunas da matriz: ");
    y=sc.nextInt();
    matriz = new int[x][y];
    System.out.println("Insira um valor:");
    int k=sc.nextInt();
    for ( int i=0; i<=x;i++){
        for (int j=0;j<=y;j++){
            matriz[i][j]=k;  
            System.out.println("Insira um valor");
            k= new Scanner(System.in).nextInt();
        }
    System.out.println(matriz[x][y]);
    }
}    

}

Cara, o ultimo elemento de um vetor é sempre o tamanho do vetor - 1, isso porque eles são indexados a partir do 0. O mesmo vale para matrizes, logo essa linha causa um erro for ( int i=0; i<=x;i++)
Segue o código correto :


public static void main(String[] args) {

		int[][] matriz;
		int y = 0;
		int x = 0;
		Scanner sc = new Scanner(System.in);
		System.out.println("Insira o numero de linhas da matriz: ");
		x = sc.nextInt();
		System.out.println("Insira o numero de colunas da matriz: ");
		y = sc.nextInt();
		matriz = new int[x][y];
		int k;
		for (int i = 0; i < x; i++) {
			for (int j = 0; j < y; j++) {				
				System.out.println("Insira um valor");
				k = new Scanner(System.in).nextInt();
				matriz[i][j] = k;
			}		}

		// exibe matriz
		for (int i = 0; i < x; i++) {
			for (int j = 0; j < y; j++) {
				System.out.println(matriz[i][j]);
			}

		}
	}


Leia isso e entenderá : https://www.ime.usp.br/~pf/algoritmos/aulas/array.html

Você está instanciando novamente um scanner onde não precisa e pedindo o valor de k depois de passar o valor.
além, matriz no mundo java tem index 0. Logo, uma array de tamanho 2 começa em 0 e termina em 1.
seu loop está dando ArrayOutOfBounds por isso

 for ( int i=0; i<=x-1;i++){
    for (int j=0;j<=y-1;j++){
        System.out.println("Insira um valor");
        k = sc.nextInt();
        matriz[i][j]=k;  
    }
System.out.println(Arrays.deepToString(matriz));
}