java学习总结(2)

来源:互联网 发布:网络巡检报告模板 编辑:程序博客网 时间:2024/05/09 02:06

温故而知新。不仅是java的学习,任何知识都需要时常复习才能更好的应用。

java的两种常用类型--数组类型和字符串类型

1、数组类型

把具有相同类型的若干变量按有序的形式组织起来,这些元素的集合称为数组。数组的特点是:类型相同,有序、定长。在一定程度上可以认为成集合类型,但是数组长度不可改变。另外,集合类型中有一种可变数组类ArrayList,这个类以后进行总结。现在总结数组类型。

数组类型不是基本数据类型,属于引用数据类型。但是数组元素可以是基本数据类型,也可以是引用数据类型。关于基本数据类型和引用数据类型,可参考网上的解释:

特点:

一、从概念方面来说

基本数据类型:变量名指向具体的数值
引用数据类型:变量名指向存数据对象的内存地址,即变量名指向hash值

二、从内存构建方面来说

基本数据类型:变量在声明之后java就会立刻分配给他内存空间

引用数据类型:它以特殊的方式(类似C指针)指向对象实体(具体的值),这类变量声明时不会分配内存,只是存储了一个内存地址。

三、从使用方面来说

基本数据类型:使用时需要赋具体值,判断时使用“==”号

引用数据类型:使用时可以赋null,判断时使用equals方法

数组的声明

声明数组很简单,有两种格式:

数组元素类型 [ ] 数组名;

数组元素类型 数组名 [ ];

如:

Student [] student;// 定义学生类型数组,数组元素为学生对象。
声明数组后,在数组名内储存了已经声明了的数组的内存引用地址,但是此地址指向的内存空间为null,需要进行内存分配。

为数组进行内存分配(数组的创建)

格式:

数组名 = new 数组元素类型[数组长度]

student = new Student[3];// 为学生数组分配内存,长度为3

注意关键字:new。 此时成功为已声明的数组创建了内存空间。实际上,数组的声明和创建可以连接起来:

Student [] student = new Student[3];// 定义学生数组并分配内存,长度为3

数组初始化

数组可以在声明时进行初始化,也可以单独进行初始化。

<p name="code" class="java">double [] score = {98.8,85,78,100}; //声明时同时进行初始化</p>

数组的使用

数组具有属性length,数组下标从0开始,数组的复制使用System.arraycopy()方法进行。直接进行赋值运算只能复制数组的引用,内存中的数组对象还是同一个。二维数组及多维数组类似,此处不再重复。

数组工具类Arrays

java提供了工具类数组,可以进行数组比较,数组排序,数组初始化,数组查找等功能。具体在下一次进行总结。

2、字符串类型

java中字符串类型是引用类型,有两种常用的字符串类型:String类和StringBuffer类。String类是不可变的字符串,StringBuffer则是可修改符串。注意:字符串为引用类型,而字符类型(即char)为基本数据类型。

字符串的声明:String stringname;

字符串实例的创建:有4种构造方法,分别为空字符串,通过已有的字符串构造,通过StringBuffer对象构造,通过字符数组构造。

也可以直接赋值:String s = "Student";

注意:双引号表示的为字符串常量,也属于字符串对象。所以,赋值时也是只传递内存地址。比如,如下方式的两个字符串变量指向同一个字符串:

String s1 = "Student";String s2 = "Student";
字符串的主要方法:获取长度,索引字符,字符串比较,获取子串,字符串连接,替换,分割等。

StringBuffer类则具有更强大的方法,具体查看相关文档。

0 0
原创粉丝点击