API
API的全称是Application Programming Interface,应用程序编程接口
- Java写好的功能代码,可以直接调用
- Oracle也为Java提供的这些功能代码提供了相应的API文档(技术使用说明书)
本节主要学习String和ArrayList这两个常用API
String
String类定义的变量可以用于存储字符串,同时String类提供了很多操作字符串的功能,我们可以直接使用
概述
- java.lang.String类代表字符串,String类定义的变量可以用于指向字符串对象,然后操作该字符串
- Java程序中的所有字符文字都为此类的对象
String是不可变字符串的原因?
String变量每次的修改其实都是产生并指向了新的字符串对象,原来的字符串对象都是没有改变的,所以称不可变字符串
特点
- 双引号创建的字符串对象,在字符串常量池中存储同一个
- 通过new构造器创建的字符串对象,在堆内存中分开存储
字符串内容比较
推荐使用String类提供的”equals“比较:只关心内容一样即可。不推荐用”==“比较,因为比较的是地址
方法名 | 说明 |
---|---|
public boolean equals(Object anObject) | 将此字符串与指定对象进行比较。只关心字符内容是否一致! |
public boolean equalsIgnoreCase (String anotherString) | 将此字符串与指定对象进行比较,忽略大小写比较字符串。只关心字符内容是否一致! |
以equals为例,使用如下:
okName.equals(name) // 判断okName字符串和name字符串是否相同,返回值为true或false
String常用方法
方法名 | 说明 |
---|---|
public int length() | 返回此字符串的长度 |
public char charAt(int index) | 获取某个索引位置处的字符 |
public char[] toCharArray(): | 将当前字符串转换成字符数组返回 |
public String substring(int beginIndex, int endIndex) | 根据开始和结束索引进行截取,得到新的字符串(包前不包后) |
public String substring(int beginIndex) | 从传入的索引处截取,截取到末尾,得到新的字符串 |
public String replace(CharSequence target, CharSequence replacement) | 使用新值,将字符串中的旧值替换,得到新的字符串 |
public String[] split(String regex) | 根据传入的规则切割字符串,得到字符串数组返回 |
ArrayList
ArrayList代表的是集合类,集合是一种容器,与数组类似,不同的是集合的大小是不固定的。通过创建ArrayList的对象表示得到一个集合容器,同时ArrayList提供了比数组更好用,更丰富的API给程序员使用
ArrayList对象创建
ArrayList list = new ArrayList();
ArrayList集合的添加元素的方法
方法名 | 说明 |
---|---|
public boolean add(E e) | 将指定的元素追加到此集合的末尾 |
public void add(int index,E element) | 在此集合中的指定位置插入指定的元素 |
泛型概述
- ArrayList<E>:其实就是一个泛型类,可以在编译阶段约束集合对象只能操作某种数据类型。
举例:
ArrayList<String> :此集合只能操作字符串类型的元素。
ArrayList<Integer>:此集合只能操作整数类型的元素。
注意:集合中只能存储引用类型,不支持基本数据类型,因此不能填int,需用Integer
ArrayList集合常用方法
方法名称 | 说明 |
---|---|
public E get(int index) | 返回指定索引处的元素 |
public int size() | 返回集合中的元素的个数 |
public E remove(int index) | 删除指定索引处的元素,返回被删除的元素 |
public boolean remove(Object o) | 删除指定的元素,返回删除是否成功 |
public E set(int index,E element) | 修改指定索引处的元素,返回被修改的元素 |
利用上述方法,我们可以实现集合的遍历:
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}