code: public Table copy() {
          Table copy = new Table(name);
          for (Column<?> column : columnList) {
              copy.addColumns(column.emptyCopy(rowCount()));
          }
  
          int[] rows = new int[rowCount()];
          for (int i = 0; i < rowCount(); i++) {
              rows[i] = i;
          }
          Rows.copyRowsToTable(rows, this, copy);
          return copy;
      }
docs: Returns a table with the same columns as this table