目录
♦️API和API帮助文档
♦️创建String
🎏直接赋值类
🎏new类
🐡空参类
构造方法:
举例代码:
🐡有参类
构造方法:
举例代码:
🐡字符数组类
构造方法:
举例代码:
🐡字节数组类
构造方法:
举例代码:
♦️String在java中的内存模型
🎏直接赋值类
🎏new类
♦️字符串比较
🎏"=="比较的是什么❓
🎏boolean equals比较方式
🎏boolean equalslgnoreCase比较方式
♦️拓展
🎏相同的字符串,键盘录入的和代码中定义的一样吗❓❓
♦️API和API帮助文档
API❓❓ API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。API通常包括函数库、数据结构和操作指南,使得开发者能够轻松地集成外部服务、数据或功能到他们的应用中。通过API,不同的软件可以相互通信,提升效率和创新。——百度百科
JavaAPI❓❓:指的就是JDK中提供的各种功能的Java类
🌟🌟API使用步骤:
- 打开API帮助文档
- 点击显示,并找到索引下面的输入在输入框中输入类名并点击显示
- 查看类所在的包
- 查看类的描述
- 查看构造方法
- 查看成员方法
可根据关键字进行搜索
注:API帮助文档下载:可以看看博主@栈老师不回家,下载中文版就够用了
♦️创建String
🎏直接赋值类
构造方法:
例:String name="abc"; //直接赋值name
举例代码:
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//1.使用直接赋值的方法获取一个字符串String s1="abc";System.out.println(s1);} }
🎏new类
🐡空参类
构造方法:
public String(); //创建空白字符,不含任何内容
举例代码:
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//空参构造:可以获取一个空白的字符串对象String s1=new String();System.out.println("@"+s1+"!");} }
🐡有参类
构造方法:
public String(String original) //根据传入的字符串,创建字符串对象
举例代码:
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//传递一个字符串,根据传递的字符串内容在创建一个新的字符串对象String s1=new String("abc");System.out.println(s1);} }
🐡字符数组类
构造方法:
public String(char[] arr) //根据字符数组,创建字符串对象
举例代码:
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//传递一个字符数组,根据字符数组的内容在创建一个新的字符串对象char[] arr={'a','b','c'};String s1=new String(arr);System.out.println(s1);} }
注:若想改变字符串中某一个字符,可将该字符串先转换为字符数组,再进行改变,最后再转换为字符串
🐡字节数组类
构造方法:
public String(byte[] arr) //根据字节数组,创建字符串对象
举例代码:
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//传递一个字节数组,根据字节数组的内容在创建一个新的字符串对象byte[] arr={97,98,99};//对应ASCII码值,将其打印出来String s1=new String(arr);System.out.println(s1);} }
♦️String在java中的内存模型
🎏直接赋值类
🎏new类
♦️字符串比较
🎏"=="比较的是什么❓
基本数据类型比较的是数据值
int a=10; int b=120; System.out.println(a==b); //false
引用数据类型比较多是地址值
String s1=new String("abc"); Strinh s2=new String("abc"); System.out.println(s1==s2); //false
🎏boolean equals比较方式
完全一样结果才是true,否则为false,有大小写的区分
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//创建两个对象String s1="abc";String s2=new String("Abc");//比较字符串对象中的内容是否相等boolean result=s1.equals(s2);System.out.println(result);} }
🎏boolean equalslgnoreCase比较方式
忽略大小写的比较
import java.util.Scanner; public class StringDemo1 {public static void main(String[] args) {//创建两个对象String s1="abc";String s2=new String("Abc");//比较字符串对象中的内容是否相等,忽略大小写boolean result=s1.equalsIgnoreCase(s2);System.out.println(result);} }
♦️拓展
🎏相同的字符串,键盘录入的和代码中定义的一样吗❓❓
import java.util.Scanner;
public class StringDemo1 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);//假设键盘录入相同字符串abcString s1=sc.nextLine();//定义一个字符串String s2="abc";//比较字符串对象中的内容是否相等System.out.println(s1==s2);}
}