On vous donne l'interface MyString suivante :
public interface MyString {
/*
* @pre -
* @post retourne la longueur de la chaîne de caractère
*/
public int length();
/*
* @pre 0<=i<this.length()
* @post retourne le caractère à l'indice i de this
*/
public char charAt(int i);
/*
* @pre s != null
* @post retourne true si la chaine de caratères s est comprise dans la chaine this, false sinon
*/
public boolean contains(MyString s);
/*
* @pre -
* @post retourne la chaine de caractères qui est la concaténation entre this et le caractère c
*/
public MyString concat(char c);
}
Ainsi que la classe suivante :
public class StringTab implements MyString {
private char[] s;
/*
* @pre -
* @post construit une instance de la classe StringTab
*/
public StringTab(char c) {
// Non fourni
}
public StringTab(char[] c) {
// Non fourni
}
//Partie de code non fournie
public MyString concat(char c) {
// A compléter
}
public boolean contains(MyString s) {
// Non fourni
}
}
INGInious