Bonjour;

Je suis entrain de travailler sur un tableau contenant des valeurs de type double, j'utilise des modules qui contiennent des sous programmes.
J'ai plusieurs questions qui sont les suivantes:

1) J'ai un sous programme du nom de sousTableauReels dans un module, UtilitaireTableau;
il m'affiche [D@40128cad on dirait la réfence du tableauReels, je n'arrive pas à identifier la petite bête afin d'avoir les vrai valeurs du tableau.

voici le code du sous programme et le programme principale(main) et tout en bas

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
public static double[] sousTableauReels(double [] tableau, int debut, int fin){
    double tableauReels[] = new double[fin];
 
     for(int i = debut; i < 5;i++ ){
         tableauReels[i] = tableau[i];
 
                }
     return tableauReels;
        }

2) Mon tableau contient des valeurs de 2 à 10 initialisé à moitié, j'ai fait 2 sous programmes pour decaler les valeurs à droite/gauche qui m'affichent

Tableau decaller à gauche :
4.0
5.0
6.0
7.0
Tableau decaller à droite :
6.0
5.0
4.0
3.0

J'aimerais avoir les même valeurs de gauche à droite et vice versa
par exemple: 6.0 à 3.0 et de 3.0 à 6.0

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public class UtilitaireTableau {
 
 
    //Sous programme pour decaler les valeurs du tableau à gauche
 
       public static void decalerGauche(double[] tableau,int nbElmt,int debut, int fin ){
           //Declaration du tableau qui reçoit les valeurs
           double decGauche [] = new double[fin];
           System.out.println("Tableau decaller à gauche :");
           for(int i = debut; i < fin; i++){
               decGauche[i] = tableau[i+1];
 
           System.out.println(decGauche[i]);    
           }
 
       }
 
    // Sous programme pour decaler les valeurs du tableua a droite
    public static void decalerDroite( double tableau[], int debut, int fin){
                        int i = 0;
                        System.out.println("Tableau decaller à droite :");
			for(i = fin; i > debut; i--){
				tableau[i] = tableau[i-1];
 
			System.out.println(tableau[i]);
			} 
 
                        }
 
    }
3) Je veux créer 2 sous programmes un, pour ajouter un element dans le tableau, j'aimerais avoir l'indice l'endroit où l'element a été ajouté
si le tableau est plein il y a aucun ajout.

Un autre pour retirer un element dans le tableau et l'indice où l'elmt à été retiré si le tableau est vide il n y a aucun retrait.

J'ai beaucoup réfléchi mais je n'arrive pas à mettre en place l'algorithme;
***************************
Programme principale
****************************
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
 
 */
public class Labo3 {
 
    public static void main(String[] args){
 
    //Declaration des variables
   double tableau[] = new double [10];   
   int nbElmt = 5;
   int debut = 1;
   int fin = 5;
 
   System.out.println("La moitié des valeurs du tableau sont :");
    //Initiaisation du tableau à moitié
    for(int i = 0; i < tableau.length/2;i++){
       tableau[i] = i+2; 
       System.out.println(tableau[i]);
 
    }
    //Afficher les valeurs du tableau remplie à moitié
    UtilitaireAffichage.afficherTableauReels(tableau);
 
    System.out.println("Le produit du tableau "+UtilitaireTableau.produitTableauReels(tableau, nbElmt));
 
    System.out.println("Le sous tableau des réel:"+UtilitaireTableau.sousTableauReels(tableau,debut,fin));
    UtilitaireTableau.decalerGauche(tableau, nbElmt, debut,fin);
    UtilitaireTableau.decalerDroite(tableau, debut,fin);
    }
 
 
}
Merci d'avance,