Manipulations de vecteurs

Nous représenterons un vecteur de taille N par un ArrayListe en java. L'ArrayListe regroupe les avantages des tableaux et de liste en même temps.

La classe Vecteur

package edu.isae.numerical;

import java.util.ArrayList;

/**
 * @author pfares
 * Un pseudo héritage par composition.
 */
public class Vecteur {
private ArrayList<Integer> v;
public Vecteur(int taille){
setV(new ArrayList<Integer>(taille));
}
Integer getV(int i) {
return v.get(i);
}
void setV(Integer val, int i) {
this.v.add(i, val);
}
@SuppressWarnings("unused")
private ArrayList<Integer> getV() {
return v;
}
public void setAll(int val){
for (int i=0; i< v.size(); i++) setV(i,val);
}
private void setV(ArrayList<Integer> v) {
this.v = v;
}
public Vecteur prod(Vecteur vect){
if (vect.v.size() != v.size()) return null;
Vecteur res = new Vecteur(v.size());
for (int i=0; i< v.size(); i++) res.setV(getV(i)*vect.getV(i), i);
return res;
}
public Vecteur somme(Vecteur vect){
if (vect.v.size() != v.size()) return null;
Vecteur res = new Vecteur(v.size());
for (int i=0; i< v.size(); i++) res.setV(getV(i)+vect.getV(i), i);
return res;
}
}


Comments