java的8个基本类型:
整数:short byte long int
字符:char
浮点数:float double
布尔类型:boolean
以上8个基本类型都对应有包装类。
(1)
自动装包/拆包 省了很多在开发过程过 从基本类型到包装类以及从包装类到基本类型之间的转换
自动装包(避免了我们去 new Integer())
从 基本类型(int) 自动的转换成 包装类(Integer)
自动拆包(避免了我们 Integer.parseInt(""))
从 包装类(Integer) 自动的转换成 基本类型(int)
(2)例子: BoxTest.java
package com.jdk150.bean;
import java.util.ArrayList;
import java.util.List;
public class BoxTest {
public static void main(String[] args) {
int a=3;
List<Integer> c = new ArrayList<Integer>();
c.add(a); //a是个int 类型,List里要放的是Integer类型这里JAVA自动的实现装包
c.add(a+3); //3是一个原始数据类型,这时候JAVA自动的给我们转换
for(Integer i:c){
System.out.println(i);
}
//c里面是个Integer类型 在这里JAVA自动的拆包将Integer类型转换成int类(结果都是一样的)
for(int i:c){
System.out.println(i);
}
}
}
(3)例子: Frequency.java
package com.jdk150.bean;
import java.util.Map;
import java.util.TreeMap;
//由命令行输入一个字符串判断这个字符出现的次数并打印
public class Frequency {
//命令行可以在eclipse的run里面的 运行 里 输入
public static void main(String[] args) {
//String 为key Integer为value TreeMap 是实现了Map接口并且是排序的
Map<String,Integer> m = new TreeMap<String,Integer>();
//获取命令行参数循环放入MAP中
for(String word:args){
Integer freq = m.get(word);
m.put(word, (freq == null?1:freq+1));
}
System.out.println(m);
}
}
(4)例子: BoxTest2.java
package com.jdk150.bean;
public class BoxTest2 {
public static void main(String[] args) {
//基本数据类型“等号“(==)就是比较内容,而对象“等号”(==)则比的是地址
Integer i1 = 100;
Integer i2 = 100;
if(i1 == i2)
System.out.println("i1 == i2");
else
System.out.println("i1 != i2");
// Integer i1 = 200;
// Integer i2 = 200;
// //“等号”(==)比的是两个对象的内存地址
// if(i1 == i2)
// System.out.println("i1 == i2");
// else
// System.out.println("i1 != i2");
//注:如果值在 -128~~~127之间 他们比较的是基本类型 int 的 value (比的是内容)
//而200已经在这个范围之外 他们相当与比较的是Integer类型(比的是内存地址)
}
}
整数:short byte long int
字符:char
浮点数:float double
布尔类型:boolean
以上8个基本类型都对应有包装类。
(1)
自动装包/拆包 省了很多在开发过程过 从基本类型到包装类以及从包装类到基本类型之间的转换
自动装包(避免了我们去 new Integer())
从 基本类型(int) 自动的转换成 包装类(Integer)
自动拆包(避免了我们 Integer.parseInt(""))
从 包装类(Integer) 自动的转换成 基本类型(int)
(2)例子: BoxTest.java
package com.jdk150.bean;
import java.util.ArrayList;
import java.util.List;
public class BoxTest {
public static void main(String[] args) {
int a=3;
List<Integer> c = new ArrayList<Integer>();
c.add(a); //a是个int 类型,List里要放的是Integer类型这里JAVA自动的实现装包
c.add(a+3); //3是一个原始数据类型,这时候JAVA自动的给我们转换
for(Integer i:c){
System.out.println(i);
}
//c里面是个Integer类型 在这里JAVA自动的拆包将Integer类型转换成int类(结果都是一样的)
for(int i:c){
System.out.println(i);
}
}
}
(3)例子: Frequency.java
package com.jdk150.bean;
import java.util.Map;
import java.util.TreeMap;
//由命令行输入一个字符串判断这个字符出现的次数并打印
public class Frequency {
//命令行可以在eclipse的run里面的 运行 里 输入
public static void main(String[] args) {
//String 为key Integer为value TreeMap 是实现了Map接口并且是排序的
Map<String,Integer> m = new TreeMap<String,Integer>();
//获取命令行参数循环放入MAP中
for(String word:args){
Integer freq = m.get(word);
m.put(word, (freq == null?1:freq+1));
}
System.out.println(m);
}
}
(4)例子: BoxTest2.java
package com.jdk150.bean;
public class BoxTest2 {
public static void main(String[] args) {
//基本数据类型“等号“(==)就是比较内容,而对象“等号”(==)则比的是地址
Integer i1 = 100;
Integer i2 = 100;
if(i1 == i2)
System.out.println("i1 == i2");
else
System.out.println("i1 != i2");
// Integer i1 = 200;
// Integer i2 = 200;
// //“等号”(==)比的是两个对象的内存地址
// if(i1 == i2)
// System.out.println("i1 == i2");
// else
// System.out.println("i1 != i2");
//注:如果值在 -128~~~127之间 他们比较的是基本类型 int 的 value (比的是内容)
//而200已经在这个范围之外 他们相当与比较的是Integer类型(比的是内存地址)
}
}