------- android培训、java培训、期待与您交流! ----------字符串总结
判断两个字符串是否完全一致,如果一致返回真,否则返回假
public boolean equals(Object obj){}
继承Object,覆盖的equals建立了字符串自己的比较方式,不比较地址
比较的是实际的字符串的内容
public class StringDemo {
public static void main(String[] args) {
method_1();
}
//第二种定义方式
private static void method_1(){
String str = new String("abc");
System.out.println(str.toString());
String str1 = "abc";
System.out.println(str1.toString());
//str1 指向的对象是"abc"对象
//str指向的对象不是"abc",指向的是new String()对象
System.out.println(str == str1);
}
//第一种定义方式
private static void method(){
String str = "abc";
System.out.println(str);
//str的指向变化而已,由原来指向abc,变成指向haha
str = "haha";
System.out.println(str);
}
}
String的判断方法,结果都是布尔
A. equals(Object obj)比较两个字符串是否完全相等
B. equalsIgnoreCase(String s)比较两个字符串是否完全相等,忽略大小写
C. startsWith(String s)判断一个字符串是否以另一个字符串开头
D. endsWith(String s)判断一个字符串是否以另一个字符串结尾
E. isEmpty()判断一个字符串是否有内容,一个字符都没有结果就是真
F. contains(String s)判断一个字符串是否包含另一个字符串
String substring(int start,int end)获取字符串一部分,包含头,不包含尾
class Repeat {
//需求:判断一个字符串在另一个字符串中出现的次数。
//注意此处如果用Split方法的话,要注意长字符串的开头和结尾是不是和字符串一致
//如果一致的话,结果就需要减一,因为split调用结束后就会在元字符串的开始或结尾
//生成空字符串,所以不建议用split方法;
public static void main(String[] args) {
String s = "jilodgjifdgdjifdgdgdkji";
System.out.println(repeat(s,"ji"));
}
private static int repeat(String f , String z){
int pos = 0;
//从f的开头头开始获取z.length()长度的字符串,
for (int i = 0; i <= f.length()-z.length(); i++) {
//注意用substring 获取字符串,后面的角标可以等于f.length()
String s = f.substring(i, i+z.length());
if (s.equals(z)) {
pos++;
}
}
return pos;
}
}
------- android培训、 java培训、期待与您交流! ----------