字符串长度由length()方法确定,返回字符串中的字符数。
语法:public int length();
String name = "John Smith";
System.out.println (name.length());
字符串比较:
检查字符串是否指向同一个或不同的对象:用 == 运算符检查
检查组成字符串内容的字符:由 equals() 方法确定
字符串比较运算符的用法:
使用String类的方法,如equals()和==运算符
public class Equality {
/** 构造方法 */
protected Equality() {
}
/**
* 它演示两个字符串的比较
*
* @param args
* 传递至 main 方法的参数
*/
public static void main(String[] args) {
String string1 = new String("苹果是一种水果");
String string2 = new String("玫瑰花是一种花");
String string3 = new String("苹果是一种水果");
System.out.println("字符串 1: " + string1);
System.out.println("字符串 2: " + string2);
System.out.println("字符串 3: " + string3);
if (string1 == string2) {
System.out.println("字符串 1 和字符串 2 相等");
} else {
System.out.println("字符串 1 和字符串 2 不等");
}
if (string1.equals(string3)) {
System.out.println("字符串 1 和字符串 3 相等");
} else {
System.out.println("字符串 1 和字符串 2 不等");
}
System.out.println("设置字符串 1 等于字符串 2");
string2 = string1;
if (string1.equals(string2)) {
System.out.println("两个字符串相等");
} else {
System.out.println("两个字符串不等");
}
}
}
使用不同的字符串、使用String类的方法,如equalsIgnoreCase()、compareTo()、startsWith()和endsWith()
public class Stringdemo {
/** 构造方法 */
protected Stringdemo() {
}
/**
* 这是 main 方法 它演示 String 类的比较方法
*
* @param args
* 传递至 main 方法的参数
*/
public static void main(String[] args) {
String string1, string2, string3;
string1 = new String("Answer");
string2 = new String("ANSWER");
string3 = new String("Question");
System.out.println("字符串 A 是 " + string1);
System.out.println("字符串 B 是 " + string2);
System.out.println("字符串 C 是 " + string3);
if (string1 == string2) {
System.out.println("字符串 A 和字符串 B 指同一个对象");
} else {
System.out.println("字符串 A 和字符串 B 指不同的对象");
}
if (string1.equals(string2)) {
System.out.println("字符串 A 和字符串 B 的内容相同");
} else {
System.out.println("字符串 A 和字符串 B 的内容不同");
}
if (string1.equalsIgnoreCase(string2)) {
System.out.println("忽略大小写,字符串 A 和 B 的内容相同");
} else if (string1.equalsIgnoreCase(string3)) {
System.out.println("字符串 A 和 B 的内容相同");
}
if (string1.compareTo("Answer") == 0) {
System.out.println("按字母,字符串 A 与 Answer 的内容相同");
}
if (string1.startsWith("A")) {
System.out.println("以 A 开始");
}
}
}
搜索字符串:indexOf(character) 方法
情形1:返回找到的第一个匹配的位置索引
情形2:如果没有找到匹配,则返回 -1
搜索字符串内有无指定的字符或字符串、使用String类的方法,如indexOf()
public class SearchString {
/** 构造方法 */
protected SearchString() {
}
/**
* 这是 main 方法 它演示在字符串内搜索
*
* @param args
* 传递至 main 方法的参数
*/
public static void main(String[] args) {
String name = "JohnSmith@123.com";
System.out.println("Email ID 是: " + name);
System.out.println("@ 的索引是:" + name.indexOf('@'));
System.out.println(". 的索引是:" + name.indexOf('.'));
if (name.indexOf('.') > name.indexOf('@')) {
System.out.println("该电子邮件地址有效");
} else {
System.out.println("该电子邮件地址无效");
}
}
}