Java字符串操作集合
String str1 = "abcd"; String str2 = "abcdabcd";
//length():求字符串的长度int len = str1.length();
System.out.println("字符串的长度:" +len);
//2.charAt(int index)取字符串中指定下标的一个元素
for (int i=0;i<len;i++) {
char c = str1.charAt(i);
System.out.println("下标" + i +"的值:" +c);
}
//3.codePointAt(int index):index 处字符的代码点值
for (int i=0;i<len;i++) {
int j = str1.codePointAt(i);
System.out.println("下标"+i+"的值:" +j);
}
//4.concat(String str) 将指定字符串连接到此字符串的结尾
String s1 = str1.concat("ABCD");
System.out.println(s1);
String s2 = str1.concat("");
System.out.println(s2);
//5.copyValueOf(char[] data):返回指定数组中表示该字符序列的 String
char[] data = {'a','b','c','d','e','f'};
String str = String.copyValueOf(data);
System.out.println(str);
//6.copyValueOf(char[] data, int offset, int count):返回指定数组中表示该字符序列的 String
char[] data = {'a','b','c','d','e','f'};
String s1 = String.copyValueOf(data, 2, 3);
System.out.println(s1);
//7.endsWith(String suffix):测试此字符串是否以指定的后缀结束
//startsWith(String prefix)
boolean isd = str1.endsWith("d");
System.out.println("此字符串是否以d结尾:"+isd);
//8.equals(Object anObject):将此字符串与指定的对象比较
boolean iseql = str1.equals("abcd");
System.out.println(iseql);
boolean iseq2 = str1.equals("abc");
System.out.println(iseq2);
//9.equalsIgnoreCase(String anotherString):将此 String 与另一个 String 比较,不考虑大小写
boolean iseql = str1.equalsIgnoreCase("ABCD");
System.out.println(iseql);
//10.getByte():将字符串转化为字节数组
byte[] data = str1.getBytes();
for (int i=0;i<data.length;i++) {
System.out.println(data[i]+"\t");
}
//indexOf(int ch, int fromIndex):返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索
int i = str2.indexOf(97, 3);
System.out.println(i);
int t = str2.indexOf(99, 1);
System.out.println(t);
int k = str2.indexOf(97,5);
System.out.println(k);
//isEmpty():当且仅当 length() 为 0 时返回 true
boolean isempty1 = str1.isEmpty();
System.out.println(isempty1);
boolean isempty2 = "".isEmpty();
System.out.println(isempty2);
//substring(int beginIndex, int endIndex):返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始,直到索引 endIndex - 1 处的字符
String s1 = str2.substring(4,7);
System.out.println(s1);
String s2 = str2.substring(2,7);
System.out.println(s2);
//toCharArray():将此字符串转换为一个新的字符数组
char[] c = str1.toCharArray();
for (int r=0;r<c.length;r++){
System.out.print(c[r]+"\t");
}
//valueOf
1. 由 基本数据型态转换成 String
String 类别中已经提供了将基本数据型态转换成 String 的 static 方法
也就是 String.valueOf() 这个参数多载的方法
有下列几种
String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串
String.valueOf(char c) : 将 char 变量 c 转换成字符串
String.valueOf(char[] data) : 将 char 数组 data 转换成字符串
String.valueOf(char[] data, int offset, int count) :
将 char 数组 data 中 由 data[offset] 开始取 count 个元素 转换成字符串
String.valueOf(double d) : 将 double 变量 d 转换成字符串
String.valueOf(float f) : 将 float 变量 f 转换成字符串
String.valueOf(int i) : 将 int 变量 i 转换成字符串
String.valueOf(long l) : 将 long 变量 l 转换成字符串
String.valueOf(Object obj) : 将 obj 对象转换成 字符串, 等于 obj.toString()
用法如:
int i = 10;
String str = String.valueOf(i);
这时候 str 就会是 "10"
2. 由 String 转换成 数字的基本数据型态
要将 String 转换成基本数据型态转
大多需要使用基本数据型态的包装类别
比如说 String 转换成 byte
可以使用 Byte.parseByte(String s)
这一类的方法如果无法将 s 分析 则会丢出 NumberFormatException
byte :
Byte.parseByte(String s) : 将 s 转换成 byte
Byte.parseByte(String s, int radix) : 以 radix 为基底 将 s 转换为 byte
比如说 Byte.parseByte("11", 16) 会得到 17
double :
Double.parseDouble(String s) : 将 s 转换成 double
float :
Double.parseFloat(String s) : 将 s 转换成 float
int :
Integer.parseInt(String s) : 将 s 转换成 int
long :
Long.parseLong(String s)
3. final String url = "http://www.263.net/images/kk/sim_1.jpg";
String parts[] = url.split("/", 5);// ==》images/sim_1.jpg 截取字符串,指明大小
int location = (int) (Math.random()*ips.length);
location = 0;
String ip = ips[location];
//别越界了
String filePath = "http://"+ip+"/"+parts[4];
filePath = filePath.replace(".jpg", ".mp4"); //替换
System.out.println(filePath); //==>http://123.129.249.204/kk/sim_1.mp4
4. String url = http://v.cctv.com/flash/mp4video4/qgds/2010/08/07/qgds_h264418000nero_aac32_20100807_1281191449601-1.mp4&2&3&4&5&6&7&8&9
截取mp4以前的 url = url.substring(0, mUrl.lastIndexOf(".mp4") + 4);
打出的log:url= http://v.cctv.com/flash/mp4video4/qgds/2010/08/07/qgds_h264418000nero_aac32_20100807_1281191449601-1.mp4
5. 截取 String mUrl = "http://www.263.net/images/sim_1.jpg";
mUrl = mUrl.substring(mUrl.lastIndexOf("/") + 1, mUrl.length());
打出log:sim_1.jpg
6.String转换为int型
String str;
int i = Integer.parseInt(str);
int型转换为String
int i;
String str = i.toString();
//convert i(int) to j(Integer)
int i;
Integer j = Integer.valueOf(i);
//convert t(Integer) to n (int)
Integer t;
int n = t.intValue();