java 学习笔记
String类常用方法熟悉
字符数组转变为String类:
public String(char [] value):把字符数组转化为String类
public String(char [] value,int offset,int count):把部分字符数组转化为Steing类
使用方法:
char a[]=new char[]{‘a’,‘b’,‘c’,‘d’};
System.out.println(new String(a)😉;
结果为:abcd
char a[]=new char[]{‘a’,‘b’,‘c’,‘d’};
System.out.println(new String(a,2,2));
结果为:cd
该方法使用后原数组仍然存在,只是产生了一个String类数据可以用一个String变量接受如:
String c=new String(a,1,2); 这时c中数据为bc
检索String类中某个字符:
public char charAt(int index)
使用方法:
String b=“abcd”;
char c=b.charAt(2);
System.out.println©;
结果为:c
String类转化为字符数组:
public char [] toCharArray()
使用方法:
int i;
Strimg b=“abcd”;
char e []=new char[10];
e=b.toCharArray();
for(i=0;i<e.length;i++)
System.out.print(e[i]);
结果为:abcd
字节与字符串的转化:
public String(byte []bytes)
public String(byte []bytes,int offest,int length)部分字节数组转化
public byte[] getBytes()字符串转化为字节数组
使用方法:
int i;
char a []=new char []{‘a’,‘x’,’ ',‘s’};
String b=“abcde”;
byte []c = b.getBytes();
for(i=0;i<c.length;i++)
c[i] -=32;
System.out.println(new String©);
此处进行的是把字符串转化为字节数组后转变大小写,后又转回字符串
public boolean equals(String a)比较字符串是否相等,区分大小写
public boolean equalsIgnoreCase(String a)比较字符串是否相等不区分大小写
public int compareTo(String a)按编码比较字符串大小
使用方法:
String a=“aaaaa”;
String b=“abcde”;
String c=“ABCDE”;
System.out.println(b.equals©);
System.out.println(b.equalsIgnoreCase©);
System.out.println(b.compareTo©);
结果为:false true 32
字符串的查找
public boolean contains(String a)查找内容是否存在
public int indexOf(String a)从前往后查找内容存在位置(返回值为第一个字母的位置),不存在为-1
public int indexOf(String a,int index)从前往后从某位置开始查找
public int lastIndexOf(String a)从后往前查找内容存在位置
public int lastIndexOf(String a,int index)从后往前从某个位置开始查找
public boolean startsWith(String a)查找是否以该内容开头
public boolean startsWith(String a,int index)从指定位置查找是否以该内容开头
public boolean endsWith(String a)查找是否以该内容结尾
使用方法:
String a=“abcdeaaaaaabcdeABCDE”;
String b=“abcde”;
String c=“ABCDE”;
System.out.println(a.endsWith©);
System.out.println(a.contains(b));
System.out.println(a.indexOf(b));
System.out.println(a.indexOf(b,5));
System.out.println(a.lastIndexOf(b));
System.out.println(a.lastIndexOf(b,6));
System.out.println(a.startsWith(b,10));
System.out.println(a.startsWith(b));
System.out.println(a.endsWith©);
结果为:true 0 10 10 0 true true true
字符串的替换
public String replaceAll(String a,String b)把指定内容全部替换为b中内容
public Steing replaceFirst(String a,String b)只替换首个满足条件的内容
String a=“abcda”;
String b=“mm”;
String c="*";
System.out.println(a.replaceAll(“a”,b));
System.out.println(a.replaceFirst(“a”,b));
结果为:mmbcdmm mmbcda