Como usar uma nested Enquanto loops para exibir linhas e colunas em Java

Nicholas Zacarias:

Eu estou tentando vir acima com o seguinte resultado:

Row 1 Col A
Row 1 Col B
Row 2 Col A
Row 2 Col B

Estou tendo dificuldade para descobrir a lógica para concluir esta tarefa. Até agora eu vim com o código fornecido abaixo:

int iRowNum;
int iColLetter;

iRowNum = 1;
iColLetter = 65;

while (iColLetter < 67)
{

  System.out.println("Row " + iRowNum + " Col " + (char)iColLetter);

  iColLetter++;

  while (iRowNum < 3)
  {
    iRowNum += 1;
  }
}

Infelizmente, eu recebo a saída:

Row 1 Col A
Row 3 Col B

Que começam disse, eu tenho um sentimento que eu estou chegando perto de onde eu preciso ser, mas eu passei uma boa parte do tempo tentando descobrir a lógica por trás da minha saída desejada.

Pergunta final Como faço para exibir as linhas e colunas, como mostrado no primeiro bloco deste post?

Arvind Kumar Avinash:

Fazê-lo da seguinte forma:

public class Main {
    public static void main(String[] args) {
        int iRowNum = 1;
        int iColLetter = 65;
        while (iRowNum < 3) {
            iColLetter = 65;
            while (iColLetter < 67) {
                System.out.println("Row " + iRowNum + " Col " + (char) iColLetter);
                iColLetter++;
            }
            iRowNum += 1;
        }
    }
}

Resultado:

Row 1 Col A
Row 1 Col B
Row 2 Col A
Row 2 Col B

Explicação:

  1. Desde que você quer a iRowNumir até 2, você começa com while (iRowNum < 3)ou while (iRowNum <= 2).
  2. Para cada valor de iRowNum, o loop interno tem a duração de dois tempos, começando com 65isto é que você precisa para repor iColLettera 65antes do início do loop interno.

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=276136&siteId=1
Recomendado
Clasificación