学习一点java的知识
前面的内容大致可以分为这么几点内容:
开发环境的搭建
基础语法
对象和类
修饰符
运算符
循环
分支
这些东西以前楼主在学习C系列的语言的时候学过了,当时虽然不是学习的java语言的东西,语言的东西都是相同的,不想再学习一边语法什么了.这里从一点新东西开始,画手楼主好几年没敲代码了,手生的不行了.
以前我们在使用数字的时候会使用内置的数据类型,比如int,long等.
int a=1;
float b=1.2;
byte c=0x4a;
但是在实际的过程中,我们经常会遇到使用对象,而不是使用内置数据类型的情况,为了解决这个问题,Java语言为每一个内置的数据类型提供了对应的包装类.
int-->Integer
long-->Long
byte-->Byte
double-->Double
float-->Float
short-->Short
事物的存在必然有他的道理,那么为什么会出现封装这些内置数据类型的包装类呢?既然是类,说明肯定有了很多方法让我们使用.上面这些包装类的父类叫做Numbers.
具体的使用如下:
Integer x=new Integer(2);
System.out.println(i);
基本类型与包装类的最大区别就是基本类型直接存数值,而Integer是对象,用一个引用指向这个对象.
这些包装类也叫做复杂数据类型.
int是基本数据类型,Integer是复杂数据类型.
int变量的初始为0,Integer的初始为null.
在使用Integer的时候需要把它当成一个类来使用,就是说在使用Integer的时候需要new,上面楼主那种使用Integer的时候没有问题,但是在楼主尝试使用自动拆箱封箱的时候出现了错误:
Integer i=10;//这行代码是错误的.
当我们需要往ArrayList,HashMap中放东西的时候,如果我们使用int这些内置数据类型的时候是放不进去的,因为容器都是装object的,这个时候就需要我们这些包装类了.
这些基本类型和复杂类型的关系是比较复杂的.
1.int是基本的数据类型.
2.Integer是int的封装类;
3.int和Integer都可以表示某一个数值;
4.int和Integer不能够互用,因为它们是两种不同的数据类型.
Integer x = new Integer(10);
ArrayList al=new ArrayList();
int n=20;
al.add(x);//这里不会报错
//al.ddd(n);//这里会报错
//这就说明了ArrayList是不能存放内置数据类型的.
//如果我们使用List集合的时候存放int类型也是不行的
ArrayList<Integer>list=new ArrayList<Integer>();//可以
//ArrayList<int>list1=new ArrayList<int>();///不可以
总结起来是这样的:如果我们定义一个int类型的数,只是用来进行一下加减乘除的运算或者作为参数进行传递,那么就可以直接声明为int基本数据类型,但如果要像对象一样来进行处理,那么就要用Integer来声明一个对象,这句话我感觉挺不符合楼主的风格,什么时候作为对象呢?这个问题是个仁者见仁智者见智的问题.只要你觉得可能作为对象来使用好点,那就声明为对象吧,我们在声明一个变量时最好声明为对象格式,这样更有利于你面相对象的理解.
好长时间没有写点东西了,这算是楼主这么长时间以来的第一遍文章吧.大家凑合看吧...