Cette page est comme une suite de Notes sur tâtonner et développer à l'aide de JavaFX, et cet article est plus proche de l'affichage. L'idée est de rapprocher l'article du contenu.
Pour être honnête, il y avait beaucoup de gaspillage dans la conception de la classe, alors j'ai dit que j'avais mis à jour l'article au démarrage de NumberPlaceSolver 2.0
.
L'affichage a été complètement éliminé.
Je n'écrirai pas les spécifications précédentes ici, veuillez donc lire l'article original.
Des choses qui peuvent être résolues par vous-même. À l'école affectation gratuite.
Java (8) ... a été appris dans une certaine mesure (inexpérimenté) En tant qu'IDE, intelli JIDEA (ver.3.2) de l'instructeur Onunume semble avoir un peu changé l'interface utilisateur avec l'ajout récent d'Appde. La fonction de refactoring était si puissante qu'elle me démangeait dans de nombreux endroits lorsque j'utilisais eclipse.
fx: id
spécifié dans FXML se fâche si vous ne spécifiez pas @ FXML
juste avant dans Controller. Si vous ne l'attachez pas dans des unités de délimitation, vous vous fâcherez.
--Si vous passez le tableau y au tableau x sous la forme x = y
(nom provisoire), il sera passé par valeur de référence (décrite plus loin). x et y sont des noms qui font référence au même objet.
--Si vous voulez le traiter comme un autre nouvel objet, utilisez la méthode clone et définissez x = y.clone ()
.==
(ie str == new String (str)
) et de comparer la valeur de référence de l'objet. Par conséquent, cela rappelle le fait que «false» est renvoyé. Cependant, le type String lui-même semble avoir des spécifications spéciales, devons-nous donc le gérer avec soin?
--En plus des lignes et des colonnes, les sous-régions 3x3 interdisent également la duplication. J'ai écrit une formule pour suivre ce groupe 3x3 dans l'ordre.for (int i = 0; i < 9; i++) for (int j = 0; j < 9; j++) {
int idev3= i/3 , jdev3= j/3 ;
int x= idev3 * 3 + jdev3 ,
y= i % 3 * 3 + j % 3 ;
subRegion[x][y] = cell[i][j]
//Puisque la fonction inverse devient une expression similaire (j'ai oublié le nom),[i][j]Quand[x][y]Même s'il est inversé, cela sert le but.
// subRegion[i][j] = cell[x][y];
}
--À propos de la longueur
du tableau à deux dimensions x = nouvel objet [i] [j]. --
x.length est ʻi
--x [0] .length
est j
. Cependant, si ʻi == 0, il lance ʻArrayIndexOutOfBoundsException
.
En Java, les pointeurs en langage C sont appelés «variables de référence» ou «valeurs de référence».
Je veux que chaque région stocke la valeur de référence afin qu'elle puisse être traitée avec uniquement le groupe de données de la cellule pour une table. En d'autres termes, je souhaite modifier les données des cellules existantes dans le tableau en opérant à partir de la région.
Ce qui suit est un diagramme d'image qui ne se connecte pas
Je l'ai écrit au début, et si vous lisez le contenu, vous le comprendrez, et comme vous auriez dû l'écrire dans le profil, vous pouvez le comprendre,
Je suis un débutant en croquant. Peu importe ce que vous faites, je pense que ce sera une mauvaise, alors pardonnez-moi s'il vous plaît (Les commentaires tels que les critiques et les mesures d'amélioration sont les bienvenus.) Même les débutants de la même classe ne devraient pas l'utiliser comme référence. Même si vous l'utilisez comme référence, obtenons l'avis de l'éducateur.
[Même emplacement que l'article d'origine](https://qiita.com/UFOnian/items/67cd4f6f8c71e178f06b#%E5%90%84%E3%82%AF%E3%83%A9%E3%82%B9%E3%81 % AE% E8% A8% AD% E8% A8% 88% E8% AA% AC% E6% 98% 8E% E3% 81% AE% E5% 89% 8D% E6% 9B% B8% E3% 81% 8D ) À l'arrière, de préférence comme histoire d'échec ou comme cible de comparaison Je ne veux pas que tu le lises (je veux l'écrire pour que je puisse le comprendre sans le lire (désir))
Jusqu'ici, la partie qui semble être essentielle bien qu'elle soit la même que l'article original.
Créez une version améliorée basée sur la conception déjà écrite.
Ce que vous voulez inclure