手册:JAVA引用类型的常用方法_初级篇
一、数组
1、概念
数组是长度固定的用来存储相同数据类型的数据的容器。
2、数组的定义
方式一
(1)格式:
数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];
(2)数组定义格式详解:
数组存储的数据类型: 创建的数组容器可以存储什么数据类型。
[] : 表示数组。
数组名字:为定义的数组起个变量名,满足标识符规范,可以使用名字操作数组。
new:关键字,创建数组使用的关键字。
数组存储的数据类型: 创建的数组容器可以存储什么数据类型。
[长度]:数组的长度,表示数组容器中可以存储多少个元素。
注意:数组有定长特性,长度一旦指定,不可更改。
方式二
格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3...};
方式三:
格式:数据类型[] 数组名 = {元素1,元素2,元素3...};
3、数据的访问
(1)索引格式:数组名[索引]
(2)数组的长度属性:每个数组都具有长度,而且是固定的,Java中赋予了数组的一个属性,可以获取到数组的长度,语句为:
数组名.length
属性length的执行结果是数组的长度,int类型结果。由次可以推断出,数组的最大索引值为数组名.length-1 。
4、数组内存分析图
单个数组
两个不相关数组
两个变量指向一个数组
5、数组的常见异常
(1)数组越界异常:以数组不存在的索引访问数组元素。
(2)数组空指针异常:将null赋给数组变量名,则变量将失去数组在堆中的地址,出现数组空指针异常。
6、数组的常见操作
Arrays.asList(T...a)
:返回List<T>
类型数据
Collection.toArray()
:集合转数组。
二、类的基本操作
1、使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下的所有类无需导入。格式:
import 包名.类名;
2、创建对象:
使用该类的构造方法,创建一个该类的对象。 格式:
数据类型 变量名 = new 数据类型(参数列表);
3、调用方法:
变量名.方法名();
4、java.lang包下的类可以省去导包操作。
三、Scanner类(java.util.Scanner)
1、常用构造方法
public Scanner(InputStream source)
/*例:创建键盘输入的Scanner对象Scanner sc = new Scanner(System.in);*/
Scanner的构造方法只有有参构造,JAVA初级阶段,参数一般都为System.in(代表从键盘输入)
2、常用方法
(1)int nextInt(); /*将输入信息的下一个标记扫描为int。
(2)int nextInt(int radix); /*将输入信息的下一个标记扫描为int。(自定义进制)
(3)String next(); /查找并返回来自扫描器的下一个完整标记。(获取键盘输入的字符串)/
四、Random类(java.util.Random)
1、常用构造方法
Random() /*创建一个新的随机数生成器*/
2、常用方法
int nextInt(); /*返回下一个伪随机数,
它是此随机数生成器的序列中均匀分布的 int 值。*/
int nextInt(int n); /*返回一个伪随机数,它是取自此随机数生成器序列的
在0(包括)和指定值(不包括)之间均匀分布的 int 值。*/
五、ArrayList类(java.util.ArrayList)
1、< E >
<E>代表泛型(只能是引用类型)
2、常用构造方法
ArrayList() /*构造一个初始容量为10的空列表*/
/*例:ArrayList<String> list = new ArrayList<String>()*/
/*从JDK1.7版本后,右侧尖括号的内容可省略,
如:ArrayList<String> list = new ArrayList<>()。*/
3、常用方法
(1)boolean add(E e);/*将指定的元素添加到此列表的尾部*/
(2)void add(int index, E element);/*将指定的元素插入此列表的指定位置*/
(3)void clear();/*移除此列表的所有元素*/
(4)E remove(int index);/*返回并移除列表中指定位置上的元素。*/
(5)boolean remove(Object o);/*移除此列表中首次出现的指定元素
(如果存在)。*/
(6)boolean contains(Object o);/*如果此列表包含指定的元素,则返回true。*/
(7)boolean isEmpty(Object o);/*如果此列表中没有元素,则返回true。*/
(8)E get(int index);/*返回此列表中指定位置上的元素。*/
(9)int indexOf(Object o);/*返回此列表中首次出现的指定元素的索引,
或如果此列表不包含元素,则返回-1.*/
(10)int lastIndexOf(Object o)/*返回此列表中最后一次出现的指定元素的索引,
或如果此列表不包含元素,则返回-1.*/
(11)int size();/*获取集合的尺寸长度,返回值是集合中包含的元素个数*/
4、注意事项
对于ArrayList集合来说,直接打印得到的不是地址值,而是内容,若内容是空,则打印的是空的中括号:[]。
在ArrayList中的泛型只能是引用类型,基本类型需要使用对应的包装类:
基本类型 | 包装类 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
六、String类(java.lang.String)
1、概述
java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如"abc" )都可以被看作是实现此类的实例。
类 String 中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻译为大写或小写的所有字符的字符串的副本。
2、特点
(1)字符串不变:字符串的值在创建后不能被更改。
(2)因为String对象是不可变的,所以它们可以被共享。
(3)"abc" 等效于 char[] data={ 'a' , 'b' , 'c' } 。
3、常用构造方法
(1)public String() :初始化新创建的 String对象,以使其表示空字符序列。
(2)public String(char[] value) :通过当前参数中的字符数组来构造新的String。
(3)public String(byte[] bytes) :通过使用平台的默认字符集解码当前参数中的字节数组来构造新的String。
4、常用方法
(1)boolean equals(Object obj); /*参数可以是任何对象,只有参数是字符串且完全相同才返回true,否则false。*/
/*本方法具有对称性,即a.equals(b)等价于b.equals(a)*/
/*若a和b中,a为常量,b为变量,推荐a.equels(b)的写法,可以避免空指针异常导致程序报错*/
(2)boolean equalsIgnoreCase(Object obj); /*若参数是字符串且在忽略大小写的情况下完全相同返回true,否则false*/
(3)int length(); /*获取字符串中的字符个数(字符串长度)并返回
(4)String concat(String str); /*将当前字符串和参数字符串拼接成的新字符串作为返回值返回*/
(5)char charAt(int index); /*获取指定索引位置的单个字符*/
(6)int indexOf(String str); /*查找参数字符串在本字符串当中首次出现的索引位置,若没有则返回-1*/
(7)String substring(int index); /*截取字符串的参数位置到字符串末尾,作为新的字符串并将其返回*/
(8)String substring(int begin, int end);/*截取从索引begin开始到索引end结束的(左闭右开)区间作为新字符串并将其返回*/
(9)char[] toCharArray(); /*将当前字符串拆分为字符数组并作为返回值返回*/
(10)byte[] getBytes(); /*获得当前字符串的底层字节数组*/
(11)String replace(CharSequence oldString, CharSequence newString); /*将所有出现的原字符串替换成为新字符串*/
/*CharSequence是一个接口,在这里指可以接受字符串类型*/
(12)String[] split(String regex); /*按照参数规则,将字符串切分为若干部分*/
/*参数为正则表达式,直接按英文句点分割字符串不能切分成功,需要使用“//.”才能用“.”进行字符串切分*/
(13)String toUpperCase(); /*将字符串小写字符转换为大写*/
(14)String toLowerCase(); /*将字符串大写字符转换为小写*/
(15)String replaceAll(String regex, String replacement);/*替换字符串*/
七、Arrays类(java.util.Arrays)
1、概述
java.util.Arrays是一个与数组相关的工具类,里面提供了大量的静态方法,用来实现数组的常见操作。
2、常用方法:
(1)String toString(数组) ;/*将参数数组转换成字符串格式,
且字符串为默认格式:["a", "b", "c"......]*/
(2)void sort(数组) ;/*按照默认升序将数组的元素进行排序*/
/*如果数组内容是数值,则按从小到大顺序排列*/
/*如果数组内容是字符串,sort自动按照字母升序排列*/
/*如果是自定义的类型,那么这个自定义的类需要有Comparable或者Comparator接口的支持*/
(3)boolean equals (数组1, 数组2) ;
(4)void fill (数组, 元素); /*用一个元素填满数组*/
(5)数组类型 copyOf (数组 ,int n);/*如果n小于原数组长度,则取原数组前n个元素;如果大于原数组长度,用0补齐*/
(6)int binarySearch ( 数组 ,元素); /*返回的是所要查询元素的下标,前提是数组已经升序排好*/
七、Math类(java.lang.Math)
1、概述
java.lang.Math类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的方法。
2、常用方法
(1)double abs(double num); /*活取绝对值*/
(2)double ceil(double num); /*向上取整*/
(3)double floor(double num); /*向下取整*/
(4)long round(double num); /*四舍五入*/
3、Math.PI
圆周率常量double值