Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
向量 读取字符串的程序: public static void main(String args[]) { ReadStream r = new ReadStream(); Vector data; data = new Vector(); for( r.skipWhite();!r.eof();r.skipwhite()){ String s = r.readString(); data.add(s); } 程序并没有显示的跟踪data中存储的字符串的个数。
0 1 2 3 4 5 6 elementCount=0 向量的构造方法 public Vector() // post: constructs a Vector with capacity for 10 elements { this(10); // call one-parameter constructor } public Vector(int initialCapacity) { Assert.pre(initialCapacity >= 0,"Nonnegative capacity."); elementData = new Object[initialCapacity]; elementCount = 0; }
0 1 2 3 4 5 6 1 6 3 7 Index=1 elementCount=4 访问向量元素 *@pre0 <= index && index < size() *@post returns the element stored in location index public Object get(int index) { return elementData[index]; }
0 1 2 3 4 5 6 1 6 3 7 Index=1 elementCount=4 修改向量元素 *@pre 0 <= index && index < size() *@post element value is changed to obj; old value is returned public Object set(int index, Object obj) { Object previous = elementData[index]; elementData[index] = obj; return previous; }
删除元素的实现 @pre 0 <= where && where < size() @post indicated element is removed, size decreases by 1 @param where The location of the element to be removed. public Object remove(int where) { Object result = get(where); elementCount--; while (where < elementCount) { elementData[where] = elementData[where+1]; where++; } elementData[elementCount] = null; // free reference return result; }
删除元素的另一种实现 public int remove( Object elem) { int nIndex; for( int i= 0 ; i< elementcount; i++){ if( elem.equals(elementData[i]){ remove(i); nIndex = i; } } return nIndex; }
判断向量是否为空、求大小 public int size() { return elementCount; } public boolean isEmpty() { return size() == 0; }
0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 L S L S S L L L L S S L L L S L 0 1 2 3 4 5 6 7 8 9 10 11 12 S L L S L L S L S L L S L 第3次 第4次 第5次 第6次
实现(LSystem.java) public static Vector rewrite(Vector s) { Vector result = new Vector(); for (int pos = 0; pos < s.size(); pos++) { if (S == s.get(pos)) result.add(L); else if (L == s.get(pos)) { result.add(S); result.add(L); } } return result; }
Connexion au compte
Connectez-vous pour publier votre contenu sur SlideServe.