This commit is contained in:
EmmanuelTiamzon
2026-02-11 15:00:39 +01:00
parent 4cf3af3b72
commit e6c28b79f9
3 changed files with 27 additions and 27 deletions

View File

@@ -7,30 +7,23 @@
Cette version a un problème : la navigation n'est pas raisonnable Cette version a un problème : la navigation n'est pas raisonnable
*/ */
public class MonBrin implements Iterator<Base> { public class MonBrin {
private MonMaillon p;
private MonMaillon debut; private MonMaillon debut;
//Le constructeur fabrique un brin à partir du premier maillon p; //Le constructeur fabrique un brin à partir du premier maillon p;
public MonBrin(MonMaillon p){ public MonBrin(MonMaillon p){
this.p = p; this.debut = p;
MonMaillon s = new MonMaillon(Base.G/*, null*/);
s = MonMaillon(Base.A, s);
s = MonMaillon(Base.T, s);
s = MonMaillon(Base.T, s);
s = MonMaillon(Base.C, s);
s = MonMaillon(Base.G, s);
} }
public MonMaillon getDebut(){ public MonMaillon getDebut(){
return debut; return this.debut;
} }
/** et pour naviguer? /** et pour naviguer?
On pourrait implémenter l'interface iterator de java.util ici On pourrait implémenter l'interface iterator de java.util ici
**/ **/
public
} }

View File

@@ -11,12 +11,14 @@ import java.util.NoSuchElementException;
*/ */
public class MonBrin implements Iterator<Base>{ public class MonBrin implements Iterator<Base>{
private MonMaillon debut;
public MonBrin(MonMaillon p){ public MonBrin(MonMaillon p){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); this.debut = p;
} }
public MonMaillon getDebut(){ public MonMaillon getDebut(){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); return this.debut;
} }
@@ -25,18 +27,20 @@ public class MonBrin implements Iterator<Base>{
// voir https://stackoverflow.com/questions/94361/when-do-you-use-javas-override-annotation-and-why // voir https://stackoverflow.com/questions/94361/when-do-you-use-javas-override-annotation-and-why
@Override @Override
public boolean hasNext(){ public boolean hasNext(){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); if(this.debut != null){
return true;
} else {
return false;
}
} }
@Override @Override
public Base next() { public Base next() {
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); //throw new NoSuchElementException("The iteration has no more elements ");
throw new NoSuchElementException(); if(hasNext()){
Base b = this.debut.getBase();
this.debut = this.debut.getSuiteMaillon();
return b;
}
} }
} }

View File

@@ -6,21 +6,24 @@
*/ */
public class MonMaillon { public class MonMaillon {
private MonMaillon suivant;
private Base contenu;
public MonMaillon(Base b){ public MonMaillon(Base b){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); this.contenu = b;
} }
public MonMaillon(Base b, MonMaillon l){ public MonMaillon(Base b, MonMaillon l){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); this.contenu = b;
this.suivant = l;
} }
public Base getBase(){ public Base getBase(){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); return this.contenu;
} }
public MonMaillon getSuiteMaillon(){ public MonMaillon getSuiteMaillon(){
throw new UnsupportedOperationException("cette méthode n'est pas implémentée"); return this.suivant;
} }
} }