Dúvida sobre preenchimento de Matriz

Olá galera… Bem… tenho esse código
for (int l = 0; l < matriz.length; l++) {
for (int c = 0; c < matriz[0].length; c++) {
if (matriz[l][c] == 0) {
matriz[l][c] = 2;
break;

                }
            }

        }

uso ele para preencher uma matriz que tem alguns espaços vazios, o problema é que só quero preencher 1 posição por vez e quando coloco o break sempre preenche 2 espaços, sem o break preenche todos

loop:
for (int l = 0; l < matriz.length; l++) {
    for (int c = 0; c < matriz[0].length; c++) {
        if (matriz[l][c] == 0) {
            matriz[l][c] = 2;
            break loop;
        }
    }
}

Se quiser saber mais:

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html

Acho que não estás vendo as respostas nos seus outros tópicos