铜山区建设局网站,安徽省高路建设有限公司网站,大学生兼职网站做ppt,行业关键词搜索量排名Java基础学习一 字符串1.1 API 与 API文档1.1.1 如何使用帮助文档查找想要导用的方法1.2 String 概述1.3 创建String对象的两种方式第一种第二种1.4 Java常用字符串方法1.4.1 比较1.4.2 字符串通过索引取出1.4.3 取出字符串中的单个字符1.4.4 替换出字符串当中的字符1.4.5 取出…
Java基础学习一 字符串1.1 API 与 API文档1.1.1 如何使用帮助文档查找想要导用的方法1.2 String 概述1.3 创建String对象的两种方式第一种第二种1.4 Java常用字符串方法1.4.1 比较1.4.2 字符串通过索引取出1.4.3 取出字符串中的单个字符1.4.4 替换出字符串当中的字符1.4.5 取出字符串中对应位置的字符1.4.6 StringBuilder类1.4.7 StringJoiner二 字符串原理2.1 字符串存储的内存原理2.2 号比较的到底是什么小题一练一 字符串
1.1 API 与 API文档
定义: API就是应用程序编程接口 ⇒ 指的就是JDK中提供的各种功能的Java类这些类将底层的实现封装了起来我们不需要关心这些类是如何实现的只需要学习这些类如何使用即可。 1.1.1 如何使用帮助文档查找想要导用的方法 打开API帮助文档 点击显示并找到索引下面的输入 在输入框中输入类名并点击显示 查看类所在的包 查看类的描述 查看构造方法 查看成员方法 JDK文件库
1.2 String 概述 打开API帮助文档点击显示并找到索引下面的输入在输入框中输入类名并点击显示查看类所在的包查看类的描述查看构造方法查看成员方法 String 是属于java.lang包中,会自动加载,所以在用的时候不需要导包
字符串不可改变,他们在创建的后不能被改变
1.3 创建String对象的两种方式
第一种
String name 爱哦苏第二种 //空参构造 创建了一个空参 ⇒
String s2 new String();//传递一个字符串,根据传递的字符串,再创建一个新的字符串对象
String s3 new String(asoud);//传递一个字符串数组,根据字符串的内容在创建一个新的字符串对象
//运用场景:修改字符串的内容,通过将其转变为数组,改变其想改变的元素,在转换为字符串就可以达到改变字符串的效果
char[] chs {a,b,c};
String s4 new String(chs); // abc//传递一个字节数组,根据字节数组的内容在创建一个新的字符串对象
//运用场景:以后网络中都是通过数据的形式进行传输字节信息
//一般要把字节数字转化为字符串进行运用,所以就要用这个构造
byte[] bte {98,99,100,101};
String s5 new string{bte};//bcde注意:(用第一个方法,直接创建的字符串) 当使用双引号直接赋值时系统会检查该字符串在串池中是否存在不存在:创建新的存在:复用
注意 :(用第二个方法创建的字符串) 他所创建出来的字符串不会进行寻找,若有一样的字符串,他依然会创建一个新的空间去存储字符串,所以这种会浪费空间
1.4 Java常用字符串方法
1.4.1 比较
号比较的是什么 基本数据类型比较的是数据值引用数据类型比较的是地址值 String s1 abc;
String s2 abc;//存储在String串池当中
System.out.printIn(s1 s2); //返回值 trueString s3 new String(abc); //存储在堆区
System.out.printIn(s3 s2); //返回值 false 因为他们之间的地址不相同
字符串比较 boolean equals方法(要比较的字符串) 完全一样结果才是true否则为false boolean equalslgnoreCase(要比较的字符串) 忽略大小写的比较 String s1 abc;
String s3 new String(abc); //存储在堆区
System.out.printIn(s1.equals(s3)); //返回值 true我们在做比较字符串的时候就必须利用包装的方法进行比较
1.4.2 字符串通过索引取出 public char charAt(int index): 根据索返回字符 public int length(): 返回此字符串的长度 数组的长度: 数组名.length 字符串的长度: 字符串对象.length() 1.4.3 取出字符串中的单个字符
chatAt(下标) 其下标原理与数组类似
String str abc;
for(int i 0 ; istr.length;i){//将每一个字符都打印出来int result str.charAt(i); // a b c
}1.4.4 替换出字符串当中的字符
replace(要替换的内容,取代它的内容) String phone 15426978236TMD;System.out.println(phone.replace(TMD,***));1.4.5 取出字符串中对应位置的字符
substring(起始位置,截至位置) 包前不包后 substring(起始位置) 从这个位置开始到最后
public class 手机屏蔽器 {public static void main(String[] args) {String phone 15426978236TMD;System.out.println(phone.replace(TMD,***));String start phone.substring(0,3);String end phone.substring(7);String result ;result resultstart****end;System.out.println(result);}
}
1.4.6 StringBuilder类 public class StringBuilderDom {public static void main(String[] args) {//1. 创建对象StringBuilder sb new StringBuilder(abc);//2. 添加对象(int String double boolean都可以)sb.append(1);sb.append(1.2);sb.append(true);sb.append(abc);System.out.println(sb);}
} 反转 StringBuilder sb new StringBuilder(abc);//3.反转sb.reverse();System.out.println(sb);//cba//4.添加字符串sb.append(iop);sb.append(qwe);sb.append(asd);sb.append(zxc);//5. 将添加到库里面的所有字母全部被变成StringString str sb.toString();// 6. 计算长度int len sb.length();System.out.println(str\nlen);1.4.7 StringJoiner
Stringjoiner跟StringBuilder一样也可以看成是一个容器创建之后里面的内容是可变的作用:提高字符串的操作效率而且代码编写特别简洁但是目前市场上很少有人用 JDK 8 出现的
StringJoiner sj new StringJoiner(---);
sj.add(aaa).add(bbb).add(ccc);
System.out.println(sj); //aaa---bbb---cccStringJoiner sj new StringJoiner(,, [,]);
sj.add(aaa).add(bbb).add(ccc);
System.out.println(sj); //[aaa,bbb,ccc]二 字符串原理
2.1 字符串存储的内存原理 直接赋值会复用字符串常量池中的new出来不会复用而是开辟一个新的空间 2.2 号比较的到底是什么 基本数据类型比较数据值引用数据类型比较地址值 小题一练 由于里面是abc 没有变量,所以在项目开始时就变为了abc,所以返回的是true