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 :

Programme arrays counters


Sujet :

Collection et Stream Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut Programme arrays counters
    Bonjour,
    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
     
    package javaapplication1;
    import java.util.Random;
    public class arrays1
    {
        public static void main(String args[])
        {
            Random rand=new Random();
            int freq[]=new int[7];
            for(int roll=1;roll<1000;roll++)
            {
            ++freq[1+rand.nextInt(6)];
            }
            System.out.println("Face\tFrequency");
            for(int face=0;face<freq.length;face++)
            {
                System.out.println(face+"\t"+freq[face]);
            }
        }
    }
    quelqu'un peut m'expliquer la ligne suivant s'il vous plaît

    ++freq[1+rand.nextInt(6)];


    surtout "++freq" sert à quoi?

  2. #2
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    239
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 239
    Points : 313
    Points
    313
    Par défaut
    i++;
    Ceci permet d'incrémenter i, après l'exécution de la ligne.
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ...
    i = 0;
    tab[i++] = 5;
    ...
    L'ordre d'exécution est le suivant :
    i = 0;
    tab[i] = 5; (donc tab[0] = 5)
    i = i + 1; (donc i = 0 + 1 = 1)

    ++i;
    Ceci permet d'incrémenter i, avant l'exécution de la ligne.
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ...
    i = 0;
    tab[++i] = 5;
    ...
    L'ordre d'exécution est le suivant :
    i = 0;
    i = i + 1; (donc i = 0 + 1 = 1)
    tab[i] = 5; (donc tab[1] = 5)

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    merci beaucoup

  4. #4
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    239
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 239
    Points : 313
    Points
    313
    Par défaut
    Pour votre cas, les données entre crochet sont prioritaires, donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ++freq[1+rand.nextInt(6)];
    équivaut à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    freq[1+rand.nextInt(6)]++;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Automatiser programme générant des dates avec un array
    Par jobhocus dans le forum SAS Base
    Réponses: 1
    Dernier message: 07/09/2011, 15h46
  2. Réponses: 1
    Dernier message: 18/03/2009, 21h10
  3. Programme de boot qui passe la main à Windows
    Par Bob dans le forum Assembleur
    Réponses: 7
    Dernier message: 25/11/2002, 03h08
  4. [Kylix] Probleme d'execution de programmes...
    Par yopziggy dans le forum EDI
    Réponses: 19
    Dernier message: 03/05/2002, 14h50
  5. [Kylix] icone associée à un programme
    Par Anonymous dans le forum EDI
    Réponses: 1
    Dernier message: 22/03/2002, 09h43

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