概述
基本数据类型与其包装类
八个基本数据类型:
byte short int char float double char boolean
思考:
int a = 1;
如何让1变成对象,如果是对象,我们就可以调用相关行为
想要有对象,首先必须要有类
基本数据类型对应的包装类
java给我们提供这样的一个类,称之为基本数据类型的包装类
byte short int
long
float double char
boolean
Byte Short Integer Long
Folat Double Character Boolean
拆装箱
装箱
将基本数据类型的变量变成引用数据类型
int a=1;
//虽然i的值也是1,但是i指向了一个新的对象,拥有属性和行为
Integer i=a;//Integer.valueOf(a);
//合并起来
Integer i=1;//自动装箱
好处:
1.将数值当成对象去研究,有很多的属性和行为去帮我们完成一些事情
2.变量声明时,使用包装类,默认值将不会有实际意义
要求:以后javaBean中的变量不允许使用基本数据类型
因为0和null不是一个概念
验证:
package com.qf;
public class Demo{
int a;
Integer b;
}
package com.qf;
public class Demo1 {
public static void main(String[] args) {
Demo demo =new Demo();
System.out.println("int属性a的值"+demo.a);
System.out.println("Integer属性b的值"+demo.b);
}
}
拆箱
将引用数据类型转化为基本数据类型
Double b=new Double(3.14);
double c=b;//b.doubleValue();
//合并起来
double c1=new Double(3.14);//自动拆箱
总结:
1。包装类和包装类之间是引用数据类型的内容判断,需要使用.equals()
2.基本数据类型和包装类型做比较时,先将包装类型自动转化为基本数据类型,然后做值判断
3.Integer包装类中存在缓存,装箱的方法ValueOf(),自动调用,范围是-128~127
Integer a1=1;//Integer a1=cache[129];
Integer a2=1;//Integer a1=cache[129];
System.out.println(a1==a2);//true
Integer a3=1000;//Integer a3=new Integer(1000);
Integer a4=1000;//Integer a4=new Integer(1000);
System.out.println(a3==a4);//false
字符串和基本数据之间的转换
基本数据类型转换为字符串类型
123===>"123"
3.14===>"3.14"
true==>"true"
String.valueOf(xxx)
int a=123;
System.out.println(a+1);//124
String a1=String.valueOf(a);
System.out.println(a1+1);//1231//"+"号相当于连接符
字符串转换为基本数据类型
"123"===>123
"true"===>true
"3.14"===>3.14
String a="123";
System.out.println(a+1);//1231
int a1=Integer.parseInt(a);
System.out.println(a1+1);//124
String b="3.14";
double b1=Double.parseDouble(b);
System.out.println(b1+1);//4.14
注意:没有Character.parseCharacter(str)这样的方法
字符串转换为字符
"a"===>'a'
.charAt(0);
String a="a";
char c=a.charAt(0);
System.out.println(c+1);//98
常用的Integer方法
int a=97;
System.out.println(a+"的二进制是"+Integer.toBinaryString(a));
System.out.println(a+"的八进制是"+Integer.toOctalString(a));
System.out.println(a+"的十六进制是"+Integer.toHexString(a));
## String类
java程序中所有的字符串都是String类的具体实例,String类提供的都是值不能修改的字符串
静态式
String a="abc";
动态式
String a=new String("abc");
注意
String a="abc";
String a1="abc";
String b1=new String("abc");
String b=new String("abc");
System.out.println(b==b1);//false
System.out.println(b.equals(b1));//true
//使用静态的方式初始化字符串,
//会先在堆内存中的字符串常量池中查找有没有该值出现过,
//如果有,则直接指向该值
//如果没有,则重新在字符串常量池中创建对象
System.out.println(a==a1);//true
最后
以上就是笨笨毛巾为你收集整理的JAVA11-int和Integer自动装箱拆箱介绍以及String类的简介的全部内容,希望文章能够帮你解决JAVA11-int和Integer自动装箱拆箱介绍以及String类的简介所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复