`
asheng
  • 浏览: 12718 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java “i++”和“++i”与"i--"和"--i"区别

    博客分类:
  • Java
阅读更多
package org.asheng.test;

/**
 * "i++" "i--" 先赋值再运算
 * "++i" "--i" 先运算再赋值
 */
public class PrePostTest {

    public static void main(String[] args) {
        int i = 3;
        i++;
        System.out.println(i); // "4"
        ++i;
        System.out.println(i); // "5"
        System.out.println(++i); // "6" 
        System.out.println(i++); // "6"
        System.out.println(i); // "7"

        int a = 0, b;
        for (b = 0 ; b < 10; b++) {
            a = a++;
            System.out.println("a = " + a);
        }

        int x = 0, y;
        for (y = 0 ; y < 10; y++) {
            x = ++x;
            System.out.println("x = " + x);
        }

    }

}

javac -sourcepath src/main/java/ -d classes/ src/main/java/org/asheng/test/PrePostTest.java

java -classpath classes/ org.asheng.test.PrePostTest
4
5
6
6
7
a = 0
a = 0
a = 0
a = 0
a = 0
a = 0
a = 0
a = 0
a = 0
a = 0
x = 1
x = 2
x = 3
x = 4
x = 5
x = 6
x = 7
x = 8
x = 9
x = 10
分享到:
评论

相关推荐

    浅谈c i++与java i++的区别

    浅谈c i++与java i++的区别 在编程语言中,increment运算符(++)是一个非常常用的操作符,它可以将变量的值增加1。但是,c语言和java语言在使用increment运算符时存在着一些区别,这篇文章将深入探讨c语言和java...

    谈谈Java中的i++

    这是和JVM的内存分配有关,JVM在处理这段带代码时,会先把i++的结果赋值给一个临时变量temp,然后再将这个临时变量的值赋值给i。即如下: int i = 0; int temp; // i = i++; int a = temp = i++;// 临时变量...

    本科毕业设计-Java-vue+springboot教务管理系统.zip

    本科毕业设计-Java-vue+springboot教务管理系统.zip本科毕业设计-Java-vue+springboot教务管理系统.zip本科毕业设计-Java-vue+springboot教务管理系统.zip本科毕业设计-Java-vue+springboot教务管理系统.zip本科毕业...

    java中for(int i= 0; i<=10;i=i++)System.out.print(i);为什么无限输出0

    ### Java中的自增运算符与循环控制 在Java编程语言中,`for`循环是一种常用的迭代结构,用于重复执行一段代码直到满足特定条件为止。在本文中,我们将深入探讨一个有趣的`for`循环示例,并解释为什么该示例会导致一...

    java中对 i=i++ 的 解释(反编译出java虚拟机指令的)

    在Java编程语言中,`i=i++`是一个典型的自增表达式,它的行为可能会引起一些混淆,特别是当对比于其他编程语言如C或C++时。这个表达式在Java中的行为可以通过反编译成Java虚拟机(JVM)指令来理解。 首先,让我们...

    Java中i++与++i的区别和使用

    Java中i++与++i的区别和使用 Java 中的 i++ 和 ++i 是两个常用的操作符,它们都是对变量进行加 1 或减 1 的操作,但是它们的执行顺序和结果却有着很大的区别。 首先,让我们来了解一下 i++ 和 ++i 的定义。i++ 是...

    java-jre-7u40-windows-i586

    java-jre-7u40-windows-i586

    java 3d--java3d-1_5_1-windows-i586.exe

    java3d-1_5_1-windows-i586.exe

    i = i++ 代码分析

    在 Java 中,i = i++ 代码的执行结果可能会让人感到意外。下面我们将对这段代码进行详细的分析。 首先,让我们看一下这段代码: ```java int i = 0; i = i++; System.out.println(i); ``` 乍看之下,人们可能会认为...

    java代码-int i = 0; int s = (++i)+(i--)+i; System.out.println(s);

    这段代码展示了如何在单行中使用这些操作符来影响变量`i`的值,并将其与其他运算相结合以计算一个整数值`s`。在深入讨论之前,先简单回顾一下这些概念: 1. 预增操作符(++i):这个操作符首先将变量`i`的值增加1,...

    java jdk-8u51-windows-i586.exe

    Java JDK 8u51是Java Development Kit的一个特定版本,主要针对Windows操作系统,特别是i586架构,也就是32位系统。然而,这个版本也兼容64位系统,为那些在64位环境中开发Java应用程序的用户提供支持。Java JDK是...

    软件工程本科期末大作业-Java JSP+SQL Serverr学籍管理系统源码.zip

    软件工程本科期末大作业-Java JSP+SQL Serverr学籍管理系统源码。主要功能有:学生登录、管理员登录、查看学籍信息、学籍信息的增删改查。软件工程本科期末大作业-Java JSP+SQL Serverr学籍管理系统源码。主要功能有...

    测试i++和++i的区别

    使用++i和i++可以使迭代操作变得容易,但是两者到底区别在哪可以从这个程序中得知,使用java语言编写

    飞信的java源码,完全反编译,解密版

    飞信 客户端的 java 源码, | Buddy.java | ChatMessage.java | ChatSession.java | ChineseString.java ...+---META-INF | MANIFEST.MF | \---res +---128 | i.png | +---176 | i.png | \---240 i.png

    i++和++i的区别.md

    你想要知道i++和i--的区别吗?你想了解i++和++i吗,还有你要了解i--和--i吗?都是可以的,关注我不定时发一些基础知识,这样可以更加的巩固你的知识的,以后的bug可以少写一点。

    JAVA最新运行环境jre-6u18-windows-i586.exe

    总的来说,Java运行环境是运行Java应用程序的基石,而"JAVA最新运行环境jre-6u18-windows-i586.exe"是针对32位Windows用户的Java 6更新18版本的安装包,它在管理和配置网络设备,尤其是Cisco设备时,扮演着不可或缺...

    java3d-1_3_1-windows-i586-opengl-sdk.exe

    java3d-1_3_1-windows-i586-opengl-sdk.exe

    java代码-i=3; a=i++; i+=a; \u6c42i=

    在Java编程语言中,`i=3; a=i++; i+=a;` 是一段涉及到变量赋值和自增操作的代码。这段代码包含了几个关键的知识点,我们将逐一深入讲解。 首先,`i=3;` 这一行是初始化一个整型变量 `i` 并赋予其初始值 3。这是在...

Global site tag (gtag.js) - Google Analytics