++ (自增) :  自增就是相当于操作数+1。比如a++;

前自增:++位于操作数的前面。  比如: ++a;



前自增:先自增,后使用。



后自增: 先使用,后自增。(这句话是错的,但是一般场合是适用的,真正的理解是要理解其在jvm中的运行机制)


(自减原理相同)


public class Test {

/**
* @author liuzhiyong
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 0;
i = i++;
System.out.println("i = " + i ); //i=0
/*
* 如上结果分析如下:
i++后自增原理:
1. int temp = i; // 先声明了一个临时变量temp用于记录了i没有加1之前的值。 temp = 0
2. 再自增。 i = i+1; i = 1;
3. 把temp用作了表达式 的结果。
i的值发生了3次变化:
i = 0 ----->1---> 0
*/
int a = 0;
//int sum = ++a; //前自增。 a = a+1 , sum = a
int sum = a++; //后自增 sum = 0 , a = a+1
System.out.println("sum= "+ sum+ " a = "+ a); //sum=0 a=1
}

}


结果如下:



java自增自减_java


 


package com.cn.map;
import java.util.HashMap;
import java.util.Map;
/**
* Author:Liu Zhiyong
* Version:Version_1
* Date:2016年7月18日09:23:01
* Desc:双列集合
* 在现实生活中有些数据是以映射关系存在的,也就是成对存在的。
*
* 双列集合:
* ----------------| Map 如果实现了Map接口的集合类。具备的特点:存储的数据都是以键值对的形式存在的,键不可重复,值可以重复。
* ---------------------| HashMap
* ---------------------| TreeMap
* ---------------------| Hashtable
*
*/
public class Demo1 {
public static void main(String[] args) {

//对map的一些测试
HashMap<String, Integer> hashMap = new HashMap<String, Integer>();
int count = 0;
hashMap.put("kk", count);
hashMap.put("hh", count++);
hashMap.put("gg", count+1);
System.out.println(hashMap);

}
}


java自增自减_java_02