processing

mercredi 4 janvier 2012 | programmation

On peut faire pas mal d’opérations sur les Array dans Processing mais pour supprimer un élément, j’ai rien vu, de plus subset compte de 1 à n les éléments de la liste (=array) !
Voici une function _remove pour les listes de chiffres, à adapter selon vos besoins.

int[] s= { 1, 2, 3, 4};

int[] _remove(int[] s, int r) {
  return concat(subset(s, 0, r), subset(s, r+1, s.length-r-1));
}

void setup() {
  println("s="+join(nf(s, 0), ", "));
  s=_remove(s, 1); //on compte comme dans l'array à partir de 0
  println("s="+join(nf(s, 0), ", "));
}

Comme la manipulation sur les tableaux en 2D n’est pas simple (enfin il faut juste mettre un type devant), voici la version 2D

int[][] _remove(int[][] s,int r){
 return (int[][]) concat((int[][]) subset(s,0,r),(int[][]) subset(s,r+1,s.length-r-1));
} 

tags : , , , , ,

Comments are closed.