ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Java基础之常用类(String类)
[打印本页]
作者:
民工心事
时间:
2022-12-26 12:18
标题:
Java基础之常用类(String类)
String 类
<ol>
定义
String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。我们可以将字符串看作是String, 但是严格意义上来说, String还是一个类,只是比较特殊罢了
特殊性
String 类型的变量可以引用地址
String 类型的变量可以直接指向常量
String 对象的长度是不可变的,如果两个字符串拼接成一个字符串,其实是创建了一个新的字符串对象
public static void main(String[] args) {
String str = new String();// 指向地址值 new对象相当于指向一个新地址
String str2 = "abc"; //指向常量
}
复制代码
常用的构造方法
public String():空构造
public String(byte[] bytes):把字节数组转成字符串
public String(byte[] bytes,int index,int length):把字节数组的一部分转成字符串
public String(char[] value):把字符数组转成字符串
public String(char[] value,int index,int count):把字符数组的一部分转成字符串
public String(String original):把字符串常量值转成字符串
测试题
判断定义为String类型的s1和s2是否相等?
String s1 = "abc";
String s2 = "abc";
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
下面这句话在内存中创建了几个对象?
String s1 = new String("abc");
答案: 创建了两个看对象,一个在常量池,一个在堆内存
判断定义为String类型的s1和s2是否相等
String s1 = new String("abc");
String s2 = "abc";
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
判断定义为String类型的s1和s2是否相等?
String s1 = "a" + "b" + "c";
String s2 = "abc";
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
判断定义为String类型的s1和s2是否相等?
String s1 = "ab";
String s2 = "abc";
String s3 = s1 + "c";
System.out.println(s3 == s2);
System.out.println(s3.equals(s2));
常用的判断方法
<ul>boolean equals(Object obj): 比较字符串的内容是否相同,区分大小写
boolean equalsIgnoreCase(String str): 比较字符串的内容是否相同,忽略大小写
boolean contains(String str): 判断大字符串中是否包含小字符串
boolean startsWith(String str): 判断字符串是否以某个指定的字符串开头
boolean endsWith(String str): 判断字符串是否以某个指定的字符串结尾
boolean isEmpty(): 判断字符串是否为空
案例
需求:模拟登录,给三次机会,并提示还有几次。
用户名和密码都是admin
[code]public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int i = 1; while(i
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4