String类的各种常用方法

String类的各种方法:

indexOf(int ch):返回指定字符在此字符串中第一次出现位置的索引
indexOf(int ch,int fromindex):返回指定字符在此字符串中第一次出现位置的索引,从 指定索引位置往后开始搜索,ch要搜索的字符,fromindex开始搜索的位置
indexOf(string ch):返回指定子字符串在此字符串中第一次出现位置的索引
indexOf(string ch,int fromindex):返回指定字符在此字符串中第一次出现位置的索引,从指定索引位置往后开始搜索,ch要搜索的字符,fromindex开始搜索的位置
lastIndexOf(int ch)这个方法是跟indexof相反,它是从后往前找,返回字符在字符串中最后一次出现处的索引,也就是说找索引的时候是倒着找的但是返回值还是按照正的索引顺序返回的比如"woaiwo"用lastindexof查找‘w’返回的值是4而不是1 lastIndexOf(int ch,fromindex) 这个方法表示从指定的索引处从后往前找该字符在此字符串中最后一次出现处的索引,比如是指定索引为7,就从7前面的索引找,第一次找到则返回索引值返回值还是按照正的索引顺序返回
substring(int begjin): 从自定位置截取字符串,默认直到末尾,返回值是string
***substring(int begin,int end)***从指定位置开始到指定位置结束截取字符串string包含头不包含尾
string的concat方法用于拼接字符串
String的split( );方法 分割字符串
string的contains()方法 字符比较,用于部分匹配查找,比如查找是否有带有"黄"字的字符串,例子可以查看我的博客里的 ***Java基本数组储存,获取,查找,匹配***里面的学生管理类
string charAt(int index) 获取字符串某一位置的字符
public int compareTo(String str) 字符串的比较,按字典顺序进行比较
***public int compareToIgnoreCase (String str)***与上面这个相同,不过忽略字符的大小写
public boolean equals(Object obj) 比较当前字符串和参数字符串是否相等,==是比较地址而equala是比较值
public boolean equalsIgnoreCase(String str) 与equals相同,不过忽略字符的大小写

public int indexOf(String str) 用于查找当前字符串中字符或子串,返回字符或子串在当前字符串中从左边起首次出现的位置,若没有出现则返回-1。
public int indexOf(String str, intfromIndex) 该方法与第一种类似,区别在于该方法从fromIndex位置向后查找。
public int lastIndexOf(String str) 该方法与第一种类似,区别在于该方法从字符串的末尾位置向前查找。
public int lastIndexOf(String str, intfromIndex) 该方法与第二种方法类似,区别于该方法从fromIndex位置向前查找。

public String toLowerCase() 返回将当前字符串中所有字符转换成小写后的新串
public String toUpperCase() 返回将当前字符串中所有字符转换成大写后的新串

String trim() 去除字符串两端的空格,中间的空格不变,一般用于登陆注册时
static String valueOf(xxx xx) 基本类型转换为字符串

替换字符串
public String replace(char oldChar, char newChar) 用字符newChar替换当前字符串中所有的oldChar字符,并返回一个新的字符串。
public String replaceFirst(String regex,String replacement) 该方法用字符replacement的内容替换当前字符串中遇到的第一个和字符串regex相匹配的子串,应将新的字符串返回。
public String replaceAll(String regex,String replacement) 该方法用字符replacement的内容替换当前字符串中遇到的所有和字符串regex相匹配的子串,应将新的字符串返回。

1、字符串转换为基本类型
java.lang包中有Byte、Short、Integer、Float、Double类的调用方法:
1)public static byte parseByte(String s)
2)public static short parseShort(String s)
3)public static short parseInt(String s)
4)public static long parseLong(String s)
5)public static float parseFloat(String s)
6)public static double parseDouble(String s)
例如:

1 int n = Integer.parseInt(“12”);
2 float f = Float.parseFloat(“12.34”);
3 double d = Double.parseDouble(“1.124”);
2、基本类型转换为字符串类型
String类中提供了String valueOf()放法,用作基本类型转换为字符串类型。
1)static String valueOf(char data[])
2)static String valueOf(char data[], int offset, int count)
3)static String valueOf(boolean b)
4)static String valueOf(char c)
5)static String valueOf(int i)
6)static String valueOf(long l)
7)static String valueOf(float f)
8)static String valueOf(double d)
例如:

1 String s1 = String.valueOf(12);
2 String s1 = String.valueOf(12.34);

boolean statWith(String prefix)boolean endWith(String suffix) 用来比较当前字符串的起始字符或子字符串prefix,终止字符或子字符串suffix是否和当前字符串相同,重载方法中同时还可以指定比较的开始位置offset。
1 String str = “asdfgh”;
2 boolean a = str.statWith(“as”);//a = true
3 boolean b = str.endWith(“gh”);//b = true

例子:

indexOf(int ch)
indexOf它的返回值是int,在看它的参数(int,ch)意思就是可以给参数一个‘char’字符所代表的int值,然后去从前向后找到该字符在字符串中第一次出现处的索引,当然了我们不可能记得住每一个char的值所以我们在使用时直接用String s=abcdef;  int i=s.indexOf(‘d’);char类型会自动提升为int类型,还有就是要注意如果返回值为-1,就说明索引越界了;
indexOf(int ch,int fromindex)
这个方法就是说从指定位置往后找,返回字符在该字符串中第一次出现处的索引,比如“hellowordfrom(‘o’,5)那返回值就是6而不是4,也不是11;
indexOf(string ch)
这个方法跟第一个差不多,只不过参数是一个子字符串,然后返回该子字符串在该字符串中第一次出现处的索引,比如"helloword"要查"ll"这个子字符串在整个字符串中出现的索引位置那返回值就是2
indexOf(string ch,int fromindex)
这个方法跟第二个差不多,从指定索引位置往后找,返回子字符串在该字符串中第一次出现处的索引,比如“hellowordfrom(‘or’,5)那返回值就是6;

string的concat方法 用于拼接字符串,用于拼接的字符串不能为空,也就是s不能为空,但是concat拼接的字符可以为空
sreing s=null;是错的,s不能为空
String s=“n”;
System.out.println(s.concat(“abcd”));
结果是nabcd;如果s=null这结果是空指针报错;
substring(int begin,int end) string的substring方法,截取字符串,第一个参数代表开始截取的位置,第二个表示结束截取的位置;结束截取的位置的字符不输出,下例索引为第二个的字符不输出,索引从0开始
String a0=“adfdsjhhhhjd”;
a0=a0.substring(1,2);
System.out.println(a0);
结果是d,f不输出,包头不包尾
String的split( );方法
String text = “Some are born great,some achieve greatness,and some have greatness thrust upon them”;
//使用逗号或者空格分割字符串(两个分隔符用|隔开)
String[] textArray = text.split(",| ");
System.out.println(Arrays.toString(textArray));
输出结果:[Some, are, born, great, some, achieve, greatness, and, some, have, greatness, thrust, upon, them]
string charAt(int index):
String str = new String(“43dfzyd”);
char ch = str.charAt(4);
结果:ch = z
public int compareTo(String str)
String str1 = “ac”, str2 = “ab”;
int retval = str1.compareTo(str2);
if (retval < 0) {
System.out.println(“str1 小于 str2”);
}else if (retval == 0) {
System.out.println(“str1 等于 str2”);
}else {
System.out.println(“str1大于 str2”);
}
结果:str1大于str2,如果str1="adafdfsgsfgf;"str2=“bc”;那么是str1小于str2;因为是按字典顺序进行比较的b>a,所以不管str1后面还有多少个字符都是比str2小的

四种方法的例子
public int indexOf(String str)
public int indexOf(String str, intfromIndex)
public int lastIndexOf(String str)
public int lastIndexOf(String str, intfromIndex)
String str = “welcome to readzhiyin”;
int a = str.indexOf(‘t’);//t = 8
int b = str.indexOf(“read”);//b =11
int c = str.indexOf(“l”,3);//c =-1
int d = str.lastIndexOf(“e”);//d= 12
int e =str.lastIndexOf(“i”,2);//e = -1

两种方法的例子
public String toLowerCase()
public String toUpperCase()
String str = new String(“JavaStudy”);
String str1 = str.toLowerCase();
//str1 = “javastudy”
String str2 = str.toUpperCase();
//str2 = “JAVASTUDY”

String trim()
String str = " z dali “;
String str1 = str.trim();
int a = str.length();//a = 8
int b = str1.length();//b = 6
System.out.println(a+”\n"+b);

static String valueOf(xxx xx)
String s1 = String.valueOf(12.99);
System.out.println(s1);
//double类型转string类型

三种方法例子
public String replace(char oldChar, char newChar)
public String replaceFirst(String regex,String replacement)
public String replaceAll(String regex,String replacement)
String str = “hjdfjdskdd”;
String str1 = str.replace(‘h’,‘g’);
//str1 =“gjdfjdskdd”
String str2 =str.replace(“hj”,“xxx”);
//str2 = “xxxdfjdskdd”
String str3 =str.replaceFirst(“d”,“c”);
//str3 = “hjcfjdskdd”
String str4 =str.replaceAll(“hj”,“xxx”);
//str4 = “xxxdfjdskdd”
System.out.println(str1+"\n"+str2+"\n"+str3+"\n"+str4);

目前只涉及到这么多,如果想起了其他的在补充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值