title: How to Delete a specific Row and Col in a 2D array in Java?
body: <p>I want to remove a person from my reference web and I first create a copy of the original 2D array and then I remake the 2D web array with a size smaller via the checkVertex ArrayList, checkVertex is a list of my unique vertices. So the problem is that when repopulating my new array[][] of size-1 is wrong, and I'm not quite sure how to fix it.</p>
  
  <pre><code>public static void deletePerson(String name)
  {
      //checkVertex is a list of the unique vertices
      int rowNum = 0;
      int colNum = 0;
      int origRows = checkVertex.size() + 1; //+1 is for the [0][0] null spot
      int origCols = checkVertex.size() + 1;
      String person = name;
      String[][] copy = matrix.clone();
  
      for(int x=0; x&lt;checkVertex.size() + 1; x++)
      {
          if( matrix[x][0] == null )
          {
              //do nothing
          }
          else if( matrix[x][0].equalsIgnoreCase(person) )
          {
              rowNum = x;
              break;
          }
      }
      for(int z=0; z&lt;checkVertex.size() + 1; z++)
      {
          if( matrix[0][z] == null )
          {
              //do nothing
          }
          else if( matrix[0][z].equalsIgnoreCase(person) )
          {
              colNum = z;
              break;
          }
      }
  
  
      //Now remove them from the list of vertexes
      for(int i=0; i&lt;checkVertex.size(); i++)
      {
          if(checkVertex.get(i).equalsIgnoreCase(person))
          {
              checkVertex.remove(i);
              break;
          }
      }
  
      setNum(checkVertex.size());
  
      //Build the sides of the matrix
      //Starting with the first col
      matrix = new String[checksSize + 1][checksSize + 1];
  
      for(int x = 0 ; x &lt; checksSize ; x++)
      {
          String vertice = checkVertex.get(x);
          if( x == rowNum )
          {
              continue;
          }
          else
          {
              matrix[x+1][0] = vertice;
          }
      }
  
      //Now get the top row
      for(int x = 0 ; x &lt; checksSize ; x++)
      {
          String vertice = checkVertex.get(x);
          if( x == colNum )
          {
              continue;
          }
          else
          {
              matrix[0][x+1] = vertice;
          }
      }
  
      //Now fill in the references
      for(int i=1; i&lt;checkVertex.size() + 2; i++)
      {
          if( i == rowNum )
          {
              continue;
          }
          else
          {
              for(int j=1; j&lt;checkVertex.size() + 2; j++)
              {
                  if( j == colNum )
                  {
                      //continue;
                      matrix[i][j-1] = copy[i][j];
                      j++;
                  }
                  else
                  {
                      matrix[i][j] = copy[i][j];
                  }
              }//end for j
          }
      }//end for i
  
  }//END deletePerson(String name)
  </code></pre>