0%

Java API 和字符串

API(Application Programming Interface):应用程序编程接口

简单理解:API就是别人已经写好的东西,我们不需要自己编写,直接使用即可.

Java API:指的就是JDK中提供得各种功能得Java类,这些类将底层的实现封装起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。

API帮助文档:帮助开发人员更好的使用API和查询API的一个工具

链接:https://pan.baidu.com/s/1DXJGNchknR_VgQVxbqzQig?pwd=rqei
提取码:rqei

如何使用帮助文档:

1
2
java.io包:读取文件的内容,或者把数据写到文件中去
java.lang包:

字符串:JAVA不会字符串,开发就会凉一半

String:定义在java.lang.String包内,代表字符串,Java程序中的所有字符串(“abc”)文字都为此类的对象。

​ 字符串的内容是不会发生改变的,它的对象在创建后不能被更改

创建String对象的两种方式

1.直接赋值

1
String name = "abc";

2.使用new关键字使用不同的构造方法去创建字符串对象:

构造方法 说明
public String() 创建空白字符串,不含任何内容
String s0 = new String( );
public String(String original) 根据传入的字符串,创建字符串对象
String s1 = new String(“abc”)
public String(char[ ] chs) 根据传入字符数组,创建字符串对象
char[] chs = {‘a’,’b’,’c’,’d’}
String s2 = new String(chs)
public String(byte[ ] chs) 根据传入字节数组,创建字符串对象
byte[] bytes= {97,98,99,100}
String s3 = new String(bytes)

字符串-字符数组-字符串:(应用场景:修改字符串的内容)

字节数组-字符串:(应用场景:网络中传输的数据其实都是字节信息)

字符串在内存中是如何创建的

StringTable(字符串常量池):直接赋值的方式获取的字符串放在串次中,串池在堆内存

当时有双引号直接赋值时,系统会坚持该字符串在串池中是否存在,不存在,创建新的,存在,复用。

Java的常用方法1-字符串的比较

1
2
3
String s1 = new String("abc");
String s2 = "abc";
System.out.println(s1==s2);//这种比较可以吗?

==号比较的原理?(String属于引用数据类型)

基本数据类型:==号比较基本数据类型比较的是数据值

引用数据类型:==号比较引用数据类型比较的是地址值

字符串的比较?

1
2
3
4
5
6
7
String s1 = "abc";//记录串池里的地址
String s2 = "abc";//串池中存在该字符串,复用,地址值相同
System.out.println(s1==s2);
//----------------------------------------------------------
String s1 = "abc";//记录串池里面的地址
String s2 = new String("abc");//记录堆里面的地址
System.out.println(s1==s2);

字符串比较:

boolean equals方法(要比较的字符串) //完全一样的结果才是true,否则为false.

boolean equalsIgnoreCase(要比较的字符串) //忽略(英文状态下的)大小写的比较,适用于验证码校验

//键盘录入得到的字符串是new出来的,只有想比较字符串的内容,就必须要用String里面的方法。

Java常用的方法2-遍历字符串

public char charAt(int index):根据索引返回字符
public int length():返回此字符串的长度,字符串的长度:字符串对象.length()

Java常用的方法3-字符串拼接和反转

1
2
3
4
5
6
7
String newStr="";//-------------------------------拼接--------------
int L = str.length();
for (int i = L-1; i >=0; i--) {
char c = str.charAt(i);
newStr=newStr+c;----------------------思想--------------
}
return newStr;

Java常用的方法4-字符串的截取

1
2
3
String subString(int beginIndex,int endIndex)   //截取---包头不包围,包左不包右
//只有返回值才是截取的小串,对原来的字符串没有任何影响,字符串本身不能发生变化。
String subString(int beginIndex) //截取到末尾

Java常用的方法5-新旧值替换

1
2
String replace(旧值,新值)//替换
//注意点:只有返回值才是替换之后的结果