本文共 4378 字,大约阅读时间需要 14 分钟。
目录
JDK帮助文档中文版下载:
Application Programming Interface:应用程序编译接口
简单理解:API就是别人已经写好的东西,我们不需要自己编写,直接使用即可。
Java API :指的是JDK中提供的各种功能的Java类。
API帮助文档:帮助开发人员更好的使用API和查询API的一个工具。
java.lang.String类代表字符串,Java程序中的所有字符串文字(例如abc)都是为此类的对象。
注意:字符串的内容是不会发生改变的,他的对象创建后不能被更改。
1.String是java定义好的一个类。定义在java.lang包中,所以使用的时候不需要导包。
2.java程序员中的所有字符串文字都被实为此类对象。 3.字符串不可改变,他们的值在创建后不能被更改。1.直接赋值 String name = "尼古拉斯·阿辉";
2 .newpublic static void main(String[] args) { //1.使用直接赋值的方式获取一个字符串对象 String s1 = "abc"; System.out.println(s1);//abc //2.使用new的方式来获取一个字符串对象 //空参构造:可以获取一个空白的字符串对象 String s2 = new String(); System.out.println("@" + s2 + "!");//"" //传递一个字符串,根据传递的字符串内容再创建一个新的字符串对象 String s3 = new String("abc"); System.out.println(s3); //传递一个字符数组,根据字符数组的内容再创建一个新的字符串对象 //需求:我要修改字符串的内容。 abc Qbc //abc --> {'a','b','c'} --> {'Q','b','c'} --> "Qbc" char[] chs = {'a', 'b', 'c', 'd'}; String s4 = new String(chs); System.out.println(s4);//abcd //传递一个字节数组,根据字节数组的内容再创建一个新的字符串对象 //应用场景:以后在网络当中传输的数据其实都是字节信息 //我们一般要把字节信息进行转换,转成字符串,此时就要用到这个构造了。 byte[] bytes = {97, 98, 99, 100}; String s5 = new String(bytes); System.out.println(s5);//abcd }
比较:
==号比基本数据类型,比的是数据值。 ==号比引用 数据类型,比的是地址值。//创建两个字符串对象 String s1 = new String("Abc"); String s2 = "abc"; //==号比较 //基本数据类型:比的是数据值 //引用数据类型:比的是地址值 System.out.println(s1 == s2);//false //比较字符串内容是否相等 boolean result1 = s1.equals(s2); System.out.println(result1);//true //比较字符串内容忽略大小写是否相等 boolean result2 = s1.equalsIgnoreCase(s2); System.out.println(result2);//true
//键盘录入一个字符串 Scanner sc = new Scanner(System.in); System.out.println("请输入一个字符串"); String str = sc.next(); //进行遍历 for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); System.out.println(c);
char类型的变量在参与计算的时候自动类型提升为int,查询ascii码表。
public static void main(String[] args) { String result = reverser("abc"); System.out.println(result); } //1.我要干嘛? --- 字符串的反转 //2.我干这件事情,需要什么才能完成? --- 需要一个字符串 //3.调用处是否需要继续使用方法的结果呢? ---需要结果进行输出 public static String reverser(String str){ String result = ""; //不用 fori 用 foor遍历循环 for (int i = str.length() - 1; i >= 0; i--) { //i 依次表示字符串中的每一个索引 (倒着的) char c = str.charAt(i); result = result + c; } return result; }
public static void main(String[] args) { //1.获取一个手机号码 String phoneNumber = "13112349468"; //2.截取手机号码前面三位 String start = phoneNumber.substring(0, 3); //3.截取手机号码后面四位 String end = phoneNumber.substring(7); //4.拼接 String result = start + "****" + end; //5.打印 System.out.println(result); }
StringBulider可以看作是一个容器,创建之后 里面的内容是可变的。
1.作用:提高字符串的操作效率。应用场景:字符串拼接,字符串反转。
//创建对象
StringBuilder sb = new StringBuilder("abc");//1.添加元素sb.append(1);sb.append(2.3);sb.append(true);System.out.println(sb);//输出abc12.3true//2.反转sb.reverse();System.out.println(sb);//eurt3.21cba//3.获取长度int len = sb.length();System.out.println(len);//11//4.转换字符串 //创建对象StringBuilder sb = new StringBuilder(); //添加字符串sb.append("aaa").append("bbb").append("ccc").append("ddd");System.out.println(sb);//aaabbbcccddd //再把StringBuilder变回字符串 String str = sb.toString();System.out.println(str);//aaabbbcccddd
当我们在调用一个方法的时候,不需要用变量接收他的结果,可以继续调用其他方法。
例: int len = getString().substring(1).replace("A","B").length();stringjoiner跟stringbuilder一样,也可以看成是一个容器,创建之后里面的内容是可以变的。
作用:提高字符串的操作效率,而且代码编写特别简洁,但是目前市场上很少有人用。 JDK8出现的public static void main(String[] args) { //1.创建对象 StringJoiner sj = new StringJoiner(", ","[","]"); //2.添加元素 sj.add("aaa").add("bbb").add("ccc"); int len = sj.length(); System.out.println(len);//15 //3.打印 System.out.println(sj);//[aaa, bbb, ccc] //变成字符串 String str = sj.toString(); System.out.println(str);//[aaa, bbb, ccc]}
1.String
表示字符串的类,定义了很多操作字串的方法。2.StringBuilder
一个可变的操作字符串容器。 可以高效的拼接字符串,还可以将容器里面的内容反转。3.StringJoiner
JDK8出现的一个可变的操作字符串的容器,可以高效,方便的拼接字符串。 在拼接的时候,可以指定间隔符号,开始符号,结束符号。转载地址:http://xtvduy.baihongyu.com/