IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Conversion vector en tableau String


Sujet :

Collection et Stream Java

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 16
    Points : 13
    Points
    13
    Par défaut Conversion vector en tableau String
    Je voudrais convertir un vecteur en tableau a deux dimensions.
    j'arrive pour un vecteur simple du stile:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Vector v = new Vector(); 
    String[] s = new String[v.size()];
    for(int i=0; i<v.size(); i++){
        s[i] = (String)v.get(i);
    }
    Mais pour un tableau String [] [] ????

  2. #2
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Salut.

    Je comprend pas trop ce que tu veux faire, Vector est unidimensionnel, je vois pas pourquoi tu veux le convertir en tableau bidimensionnel.

    Ou alors c'est un Vector de Vector?

    Bref, si tu pouvait être un petit peu plus précis.

    Ps: Au fait, il est conseillé d'utiliser les ArrayList plutôt que les Vector car ces derniers sont des vieilleries hérité de Java 1.0 donc plutôt obsolètes (bien que non dépréciés)

    -"Tout ça me paraît très mal organisé. Je veux déposer une réclamation. Je paye mes impôts, après tout!"
    -"JE SUIS LA MORT, PAS LES IMPÔTS! MOI, JE N'ARRIVE QU'UNE FOIS".

    Pieds d'argile (1996), Terry Pratchett 1948 - 2015
    (trad. Patrick Couton)

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Voila mon probleme
    je veux me servir de AbstractTableModel pour afficher les données d'une base de données. Actuellement pour afficher les données je me sers d'un vecteur
    et d'un jtable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        Vector columnNames = new Vector();
        Vector data = new Vector();
     while (rs.next())
              {
               Vector row = new Vector(columns);
              for (int i = 1; i <= columns; i++)
              {
              row.addElement( rs.getString("ACLE") );
              row.addElement( rs.getString("ALIBELLE") );
              .....
              data.addElement( row );
              JTable table = new JTable( data, columnNames);
    Mon affichage est ok. Mais mon probleme est que certaine méthode ne marche qu'avec AbstractTableModel comme par exemple afficher une Checkbox a la place de true ou false...
    Le modele AbstractTableMode prend les données sous un format:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String[] columnNames = {""};
    Object[][] data =  {{}  };
    JTable table = new JTable(data, columnNames)
    d'ou mon interet du moins je crois de convertir mon vecteur de données en un
    Object [] [] pour que les méthode de AbstractTableMode puissent fonctionner

  4. #4
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Citation Envoyé par gdhugue1
    Voila mon probleme
    je veux me servir de AbstractTableModel pour afficher les données d'une base de données. Actuellement pour afficher les données je me sers d'un vecteur
    et d'un jtable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        Vector columnNames = new Vector();
        Vector data = new Vector();
     while (rs.next())
              {
               Vector row = new Vector(columns);
              for (int i = 1; i <= columns; i++)
              {
              row.addElement( rs.getString("ACLE") );
              row.addElement( rs.getString("ALIBELLE") );
              .....
              data.addElement( row );
              JTable table = new JTable( data, columnNames);
    Mon affichage est ok. Mais mon probleme est que certaine méthode ne marche qu'avec AbstractTableModel comme par exemple afficher une Checkbox a la place de true ou false...
    Le modele AbstractTableMode prend les données sous un format:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String[] columnNames = {""};
    Object[][] data =  {{}  };
    JTable table = new JTable(data, columnNames)
    d'ou mon interet du moins je crois de convertir mon vecteur de données en un
    Object [] [] pour que les méthode de AbstractTableMode puissent fonctionner
    Ok je comprends un peu mieux ce que tu veux faire et pouquoi tu utilise Vector.

    D'après ton code tu as un bien un Vector de Vector donc pour transformer tout ça en tableau une simple double boucle suffit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
                    Object[][] tab = new Object[data.size()][];
    		for (int i=0;i<data.size();i++){
    			Vector row = (Vector)data.get(i);
    			tab[i]=new Object[row.size()];
    			for(int j=0;j<row.size();j++){
    				tab[i][j]=row.get(j);
    			}
    		}
    Si c'est pas clair, dis le...

    -"Tout ça me paraît très mal organisé. Je veux déposer une réclamation. Je paye mes impôts, après tout!"
    -"JE SUIS LA MORT, PAS LES IMPÔTS! MOI, JE N'ARRIVE QU'UNE FOIS".

    Pieds d'argile (1996), Terry Pratchett 1948 - 2015
    (trad. Patrick Couton)

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Ok merci, ca marche pour le tableau mais j'ai toujours le meme probleme
    pour afficher une checkbox a la place de true ou false dans une colonne.
    j'ai la methode qui plante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    JTable table = new JTable( tab, nomcol)
              {
     
            public Class getColumnClass(int column)
             {
                     return getValueAt(0, column).getClass();
             }
             };

Discussions similaires

  1. conversion vector to string
    Par identifiant_bidon dans le forum C++
    Réponses: 18
    Dernier message: 15/11/2007, 10h40
  2. conversion d'un tableau de bytes en string
    Par prady92 dans le forum VB.NET
    Réponses: 3
    Dernier message: 16/03/2007, 13h47
  3. conversion d'un tableau de string en tableau de file
    Par sroux dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 01/12/2006, 11h19
  4. Problème de cast en transformant un Vector en tableau de String
    Par montabou dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 11/11/2006, 18h58
  5. [Collections] Conversion de Vector en tableau de String
    Par java_math dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 06/06/2004, 12h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo