Мне нужно создать таблицу с двумя размерами битов BitSet (9x9). Я выполняю эту таблицу с битовыми значениями от 1 до 9. Я хочу вывести значение конкретного случая (пример 5), но метод .set (int, boolean) изменяет все поля в моей диаграмме.Как обрабатывать таблицу типа BitSet с помощью методов BitSet?
как это сделать ??
//create
private BitSet[][] solveur = new BitSet[9][9];
//init
BitSet BitInitialisation = new BitSet();
BitInitialisation.set(1, 10);
for (int ligne = 0; ligne < 9; ligne++) {
for (int colonne = 0; colonne < 9; colonne++) {
solveur[ligne][colonne] = BitInitialisation;
}
}
//read + method call
for (int ligne = 0; ligne < 9; ligne++) {
for (int colonne = 0; colonne < 9; colonne++) {
AjusterLigne(ligne ,5);
}
}
//method "AjusterLigne"
private void AjusterLigne(int ligne, int valeur) {
for (int colonne = 0; colonne < GrilleSudoku.MAX; colonne++){
solveur[ligne][colonne].set(valeur, false);
}
}
Результат: пустая таблица ...
Цикл 'colonne' предшествующего AjusterLigne бесполезно - он просто повторяет AjusterLigne 9 раз. – laune