CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Incrementation en Java

XKCD
XKCD
Niveau 10
17 novembre 2011 à 15:13:55

B'jour :-)

Réalisant dans le cadre d'un projet de cours un compilateur Java (en plus épuré), je cherche à connaître la différence entre les expressions :

x++ ;

et

++x ;

s'il y en a une. Si quelqu'un connaît ce langage... Merci d'avance :)

Paulop
Paulop
Niveau 12
17 novembre 2011 à 16:04:10

Ben c'est la post ou pre incrémentation. Premier cas on lit la valeur avant de l'incrémenter et dans l'autre on incrémente puis on lit la valeur.

XKCD
XKCD
Niveau 10
17 novembre 2011 à 16:25:45

Si je comprends bien, le code :

int x = 0;
int y = x++;

fait dans l'ordre "x=0, y=0, x=1", alors que :

int x = 0;
int y = ++x;

fait dans l'ordre "x=0, x=1, y=1". C'est ça ?

Paulop
Paulop
Niveau 12
17 novembre 2011 à 16:42:31

Exactement. :)

caelacanthe
caelacanthe
Niveau 10
17 novembre 2011 à 18:31:14

"int y = x++; "

:d) il y a un intérêt à faire ça, à part réduire le nombre de lignes de code (et risquer de sacrifier en lisibilité)? :peur:

XKCD
XKCD
Niveau 10
17 novembre 2011 à 18:39:49

Va savoir, mais je dois prévoir le cas où le futur utilisateur de mon compilateur aurait envie de faire ça :noel:

godrik
godrik
Niveau 30
17 novembre 2011 à 18:59:12

caelacanthe, parfois ce genre d'astuce permet d'augmenter la lisibilite en rendant le code plus concis. Un exemple classique est celui du remplissage d'un buffer avec des information bizarre. Tu arrives a des codes comme:

buffer[end++] = info1;
buffer[end++] = info2;
buffer[end++] = info3;

ce code est clair et concis. Si tu met les end++ sur des lignes a part, tu te retrouve a doubler la taille du code pour aucun gain de lisibilite.

Arkwolf
Arkwolf
Niveau 29
17 novembre 2011 à 21:56:41

Dans la vrai vie on utilise jamais ++truc, si ? :(

godrik
godrik
Niveau 30
17 novembre 2011 à 22:06:15

dans le meme genre de condition que truc++

Nightmarez
Nightmarez
Niveau 9
18 novembre 2011 à 13:31:33

Arkwolf > Ca peut s'utiliser mais est souvent substitue a une post incrementation. C'est dans les habitudes plus qu'autre chose, je pense.

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment