Je suis nouveau sur Java et j'ai trouvé cette implémentation de liste chaînée ci-dessous. Dans la méthode principale, nous créons une instance LinkList nommée theLinkedList et en utilisant cette méthode, nous appelons la méthode insertFirstLink 4 fois. La méthode InsertFirstLink crée une instance de lien appelée newLink. Lorsque nous appelons insertFirstLink 4 fois.Création d'objets avec le même nom lors de l'implémentation d'une liste chaînée
Cette méthode crée-t-elle 4 instances de liaison avec le même nom (newLink)? Comment est-ce possible? Nous ne pouvons pas créer des objets avec le même nom, n'est-ce pas? Qu'est-ce qui me manque? Que dois-je étudier pour comprendre cette partie?
Merci les gars. J'ai compris mon problème. Après chaque exécution, la nouvelle variable de lien est détruite, mais chaque variable détruite a une référence et c'est comme une ligne. Nous pouvons toujours passer en revue la ligne et trouver le nœud que nous voulons.
public class Link {
public String bookName;
public int millionsSold;
public Link next;
public Link(String bookName, int millionsSold) {
this.bookName = bookName;
this.millionsSold = millionsSold;
}
public static void main(String[] args) {
LinkList theLinkedList = new LinkList();
theLinkedList.insertFirstLink("Don Quixote",500);
theLinkedList.insertFirstLink("A Tale of two cities",200);
theLinkedList.insertFirstLink("The Lord Of The Rings",150);
theLinkedList.insertFirstLink("Harry Potter",1000);
}
}
class LinkList {
public Link firstLink;
LinkList() {
firstLink = null;
}
public boolean isEmpty() {
return(firstLink == null);
}
public void insertFirstLink(String bookName, int millionsSold) {
Link newLink = new Link(bookName, millionsSold);
newLink.next = firstLink;
firstLink = newLink;
}
}
Variables' (pas des objets, ils ne sont pas les noms) Les noms doivent être uniques dans la portée de * *. – Kayaman
Les nœuds de liste n'ont pas de noms. 'newLink' est une référence ** locale ** à un objet nouvellement créé. Je suggère que vous examiniez les variables * types * et * étendues *. –
Je pensais que cette instance est un objet. Mais sans nom comment le compilateur le reconnaît. Pouvez-vous me donner plus de détails? –