zoukankan      html  css  js  c++  java
  • Java一元操作符++详解

    废话不多说,直接上代码。

    package com.coshaho.learn;
    
    /**
     * 
     * OperatorLearn.java Create on 2016-11-13 下午8:38:15    
     *    
     * 类功能说明: 深入理解++操作符  
     *
     * Copyright: Copyright(c) 2013 
     * Company: COSHAHO
     * @Version 1.0
     * @Author coshaho
     */
    public class OperatorLearn 
    {
        // 一元操作符,赋值操作符,三目操作符从右向左运算,其他操作符从左向右运算
        // ++x步骤:1.返回x+1;2.执行x = x + 1;
        // x++步骤:1.返回x;2.执行x = x + 1;
        public static void main(String[] args)
        {
             int x = 1;
             // 步骤1. 计算y(默认值0);
             // 步骤2. (x++)返回x值给临时变量c,为1;
             // 步骤3. x = x + 1,x为2;
             // 步骤4. 计算x,x为2;
             // 步骤5. y = 临时变量c + 2 = 1 + 2 = 3.
             int y = (x++) + x;
             System.out.println("x = " + x);
             System.out.println("y = " + y);
             
             x = 1;
             // 步骤1. 计算y(默认值0);
             // 步骤2. (++x)返回x+1值给临时变量c,为2;
             // 步骤3. x = x + 1,x为2;
             // 步骤4. 计算x,x为2;
             // 步骤5. y = 临时变量c + 2 = 2 + 2 = 4.
             y = (++x) + x;
             System.out.println("x = " + x);
             System.out.println("y = " + y);
             
             x = 1;
             // 步骤1. 计算y(默认值0);
             // 步骤2. 计算x,为1;
             // 步骤3. (++x)返回x+1值给临时变量c,为2;
             // 步骤4. x = x + 1,x为2;
             // 步骤5. y = 1 + c = 1 + 2 = 3.
             y = x + (++x);
             System.out.println("x = " + x);
             System.out.println("y = " + y);
             
             x = 1;
             // 步骤1. 计算y(默认值0);
             // 步骤2. 计算x,为1;
             // 步骤3. (x++)返回x值给临时变量c,为1;
             // 步骤4. x = x + 1,x为2;
             // 步骤5. y = 1 + c = 1 + 1 = 2.
             y = x + (x++);
             System.out.println("x = " + x);
             System.out.println("y = " + y);
             
             x = 1;
             // 1.计算x,为1;
             // 2.计算(x++)返回1给临时变量c
             // 3.x = x + 1,为2;
             // 4.计算x = 1 + c = 1 + 1 = 2;
             x += (x++);
             System.out.println("x = " + x);
             
             int[] xx = {1,3};
             int i = 0;
             xx[i++] *= 2;
             System.out.println("xx[0] = " + xx[0] + ", xx[1] = " + xx[1]);
             
             xx = new int[]{1,3};
             i = 0;
             xx[i++] = xx[i++] * 2;
             System.out.println("xx[0] = " + xx[0] + ", xx[1] = " + xx[1]);
             
             /**
              * 输出
              * x = 2
                y = 3
                x = 2
                y = 4
                x = 2
                y = 3
                x = 2
                y = 2
                x = 2
                xx[0] = 2, xx[1] = 3
                xx[0] = 6, xx[1] = 3
              */
        }
    }
  • 相关阅读:
    协同过滤
    深度学习中 epoch,[batch size], iterations概念解释
    如何查看Python内置模块的实现代码
    机器学习/数据挖掘/算法岗位
    算法工程师B
    算法工程师A
    web性能测试基本性能指标
    Loadrunner11不能调用IE8解决方法大全
    抓取Android应用的log
    关于字符latin capital letter sharp s "ß"( U+1E9E)显示的问题
  • 原文地址:https://www.cnblogs.com/coshaho/p/6059900.html
Copyright © 2011-2022 走看看