2013-10-27 10 views
6
System.out.println(info + ": " + ++x); 

हैजावा जटिल बयान निष्पादन आदेश

System.out.println(info + ": " + x); 
x++; 

के बराबर JVM केवल एक पर एक बयान पर कार्रवाई कर सकते हैं के रूप में

x++; 
System.out.println(info + ": " + x); 

और

System.out.println(info + ": " + x++); 

के इस बयान के बराबर है समय, क्या यह इन राज्यों को विभाजित करता है इस तरह के ents?

+2

मैं यहाँ कुछ पागल थ्रेडिंग पागलपन की उम्मीद कर रहा था। –

+0

शायद एक डुप्लिकेट ... अच्छी तरह से, सैकड़ों अन्य प्रश्न (http://stackoverflow.com/questions/484462/difference-between-i-and-i-in-a-loop और अन्य) – Marco13

उत्तर

3

हाँ और हाँ।

++x युक्त कथन से पहले निष्पादित किया जाएगा, यानी x का मान इसे उपयोग करने से पहले बढ़ाया जाएगा।

x++ युक्त कथन के बाद निष्पादित किया जाएगा, यानी मान का उपयोग किया जाएगा और फिर परिवर्तनीय x वृद्धि होगी।

स्पष्ट होने के लिए: दोनों मामलों में परिवर्तनीय x का मान बदल दिया जाएगा।

+0

मैं पूछ रहा हूं उस कथन को निष्पादित करना jvm इसे कैसे विभाजित करेगा? – Ruturaj

+0

यह उत्तर सही नहीं है। मूल्य प्राप्त होने के बाद x ++ पोस्ट-वृद्धि होगी। – EJP

+1

@EJP जो मैंने ऊपर बताया है – Szymon

संबंधित मुद्दे