学习类容:
学习字符串String、集合ArrayList
String
一、创建字符串
创建字符串一共有三种方式:
//方式1
String str1= "abc";
System.out.println(str1);
//方式2
String str2= new String("abc");
System.out.println(str2);
//方式3
char[] value={'a','b','c'};
String str=new String(value);
System.out.println(str);
二、字符串基本操作
Java语言提供了几种对字符串的操作函数或方法
字符串连接
最常用对字符串进行的操作之一就是将两个字符串连接起来,合并为一个字符串。String类提供连接两个字符串的方法concat(),语法格式为:
string1.concat(string2);
连接字符串还可以使用加号“+”运算符。这是一个重载了的运算符,用来直观地连接两个字符串,它使用起来比concat()方法更加灵活。例如:
String str3=str1+str2;
注意:
- 当表达式中包含多个加号,并且存在各种数据类型参与运算时,则按照加号运算符从左到右进行运算;
- Java会根据加号运算符两边的操作数类型来决定是进行算术运算还是字符串连接的运算。
三、字符串比较
比较两个字符串是否相等
equals():比较两个字符串是否相等,返回boolean
equalsIgnoreCase():返回值为boolean
str1.equals(str2); //严格比较字符串是否相同
str1.equalsIgnoreCase(str2); //忽略字母大小写来进行比较
比较两个字符串的大小
使用compareTo比较两个字符串的大小
- 若调用方法的字符串比较参数字符串大,返回正整数;
- 若比参数字符串小,则返回负整数;
- 若两字符串相等,则返回0;
- 若两个字符串各个位置的字符都相同,仅长度不同,则返回值为两者长度之差。
四、字符串的查找和截取字符串
查找:
- int indexOf(char ch):搜索字符ch出现的第一个索引号,如果没有找到匹配,则返回-1;
- int indexOf(char ch,int fromIndex):从fromIndex位置开始搜索字符ch出现的第一个索引号;
- int indexOf(String str):搜索字符串str出现的第一个索引号。
截取字符串:
- String substring(int index):提取从位置索引开始的字符串部分;
- String substring(int beginindex,int endindex):提取beginindex到endindex-1为止的字符串部分。
字符串替换
字符串替换是用新字符去替代字符串中指定的所有字符,String类提供的replace方法可以实现这种替换:
string1.replace(char oldchar,char newchar)
ArrayList
ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。ArrayList 继承了 AbstractList ,并实现了 List 接口。
使用方法:
1.导包
ArrayList 类位于 java.util 包中,使用前需要引入它
2.添加元素
ArrayList 类提供了很多有用的方法,添加元素到 ArrayList 可以使用 add() 方法 。
3.删除元素
如果要删除 ArrayList 中的元素可以使用 remove() 方法:
4.计算大小
import java.util.ArrayList;
public class RunoobTest {
public static void main(String[] args) {
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
System.out.println(sites.size());
}
}
//输出结果:4
5.其他的引用类型
ArrayList 中的元素实际上是对象,在以上实例中,数组列表元素都是字符串 String 类型。
如果我们要存储其他类型,而 <E> 只能为引用数据类型,这时我们就需要使用到基本类型的包装类。
6.ArrayList 排序
Collections 类也是一个非常有用的类,位于 java.util 包中,提供的 sort() 方法可以对字符或数字列表进行排序。
总结
本周主要学习了Java中字符串和集合的使用,下周将尝试制作学生管理系统