字符数组未正确更新 java

Array of Characters not updated properly java

我正在尝试在 java 的 windows 上的终端中打乒乓球。 我有一个字符数组(称为板),桨位置由以下代码更新

public void movePaddles()
{
  int inp = 0;
  try
  {
     inp = System.in.read();
  }
  catch(Exception e)
  {
     return;
  }
  int olr = rtop;
  int oll = ltop;
  switch(inp)
  {
     case 'w':
        ltop -=1;
        break;
     case 's':
        ltop += 1;
        break;
     case 'i':
        rtop -= 1;
        break;
     case 'k':
        rtop += 1;
        break;
  }
  updatePaddle('L',oll);
  updatePaddle('R',olr);
}
public void updatePaddle(char side,int oldtop)
{
  int edge = 0;
  int top = 0;
  // Leave 1 char of space
  if (side == 'L')
  {
     edge = 1;
     top = ltop;
  }
  else if (side == 'R')
  {
     edge = y-2;
     top = rtop;
  }
  for (int i = oldtop;i < paddleSize+1;i++)
  {
        board[i][edge] = ' ';
  }
  for (int i = top;i < paddleSize+2;i++)
  {
        board[i][edge] = paddleChar;
  }
}

最终发生的事情是向下移动时球拍消失,导致游戏无法玩。我做错了什么?

(github 上 https://github.com/Tookmund/Text-Pong 的完整代码)

在发布我的问题之前,我确实尝试过调试我的程序,但它没有正确显示。

基本上我需要添加当前位置的值 (top/oldtop) 以便循环不会过早退出,因为我最初比 paddleSize 大。