----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
3.1String 类
3.1.1 .String 的俩种实例化方式
字符串与守符
在各个语言中实际上一个字符串就是
25, 判断是否与指定的字符开始与结尾 rtWith(),endWith()
String str1=”hello”;
System.out.println(str1.startsWith("h"));
System.out.println(str1.endsWith("d"));
True
Flase
替换;
26,System.out.println("替换 replace()");
String netStr=str1.replaceAll("a", "!");//a替换成 !
System.out.println("原字符中abcd被替换成 "+netStr);
原字符串的abc被替换成 !bcd
27,字符中截取:substring()
System.out.println("字符串截取 subString()");
String str7=str1.substring(1);
String str8=str1.substring(0,3);
System.out.println(str7);
System.out.println(str8);
bcd
abc
28, 分字符串 split()");
String str10="Hello World!";
String s[]=str10.split(" ");
for(String stys:s)
System.out.println(stys)
}
Hello
World!
29,字符串查找 indexOf()
取得指定的定符串的位置:public int index Of(String star)
此方法返回int型数据,如果查找到了刚返回位置(0), 找不到返回值为—1
直接查找 public boolean contains
去掉左右空格 public String trim();
取得字符串长度 public int length();
转大写 public int toUpperCase();
转小写 public int to Lowercase();
30,字符串变成字符数组
String str="Hello World";
char b[]=str.toCharArray();
for(int i=0;i<b.length;i++)
System.out.println(b[i]);
char a []={'H','e','l','l','o'};
String str2=String.valueOf(a);
System.out.println(str2);
char c[]={'W','o','r','l','d'};
String str3=String.copyValueOf(c);
System.out.println(str3);
H
e
l
l
o
W
o
r
l
d
Hello
World
二,
字符串和基本数据类型的转换
字符串变成int :
Sting str=””;
int i=Integer.parseInt(str);
字符串变成float:
String str=””;
float f=Float.parseFloat(str);
字符串变成double
String str=””;
double d=Double.parseDouble(str);
基本类型变成字符串
int i;
String str=String.valueOf(i);
Scanner(InputStream.in)
用指定输入流创建一个Scanner对象
String nextLine()
读取输入的下一行内容
String next()
读取输入的下一行内容
Int nextInt()
Double nextDouble()
读取并转换下一个表示整数或浮数点的字符序列
Boolean hasNext()
Boolean hasNextDouble()
String str1 = "abcd";
String str2 = "abcdabcd";
1.length():求字符串的长度
int len = str1.length();
System.out.println("字符串的长度:"+len);
运行结果:
字符串的长度:4
2.charAt(int index):取字符串中指定下标的一个元素
for (int i=0;i<len;i++){
char c =str1.charAt(i);
System.out.println("下标"+i+"的值:"+c);
}
运行结果:
下标0的值:a
下标1的值:b
下标2的值:c
下标3的值:d
3. codePointAt(int index):index 处字符的代码点值
for (int i=0;i<len;i++){
int k = str1.codePointAt(i);
System.out.println("下标"+i+"的值:"+k);
}
运行结果:
下标0的值:97
下标1的值:98
下标2的值:99
下标3的值:100
4. codePointBefore(int index):给定索引前面的 Unicode 代码点
int k = str1.codePointBefore(0);
System.out.println("下标"+0+"之前的值:"+k);
java.lang.StringIndexOutOfBoundsException
int k = str1.codePointBefore(1);
System.out.println("下标"+1+"之前的值:"+k);
运行结果:
下标1之前的值:97
int k = str1.codePointBefore(2);
System.out.println("下标"+2+"之前的值:"+k);
运行结果:
下标2之前的值:98
int k = str1.codePointBefore(3);
System.out.println("下标"+3+"之前的值:"+k);
运行结果:
下标3之前的值:99
int k = str1.codePointBefore(len);
System.out.println("下标"+len+"之前的值:"+k);
运行结果:
下标4之前的值:100
5. codePointCount(int beginIndex, int endIndex): 返回此 String 的指定文本范围中的 Unicode 代码点数
int k = str1.codePointCount(0, len);
System.out.println("0到"+len+"之前的值:"+k);
运行结果:
0到4之前的值:4
int k = str1.codePointCount(0, len-2);
System.out.println("0到"+(len-2)+"之前的值:"+k);
运行结果:
0到2之前的值:2
6. compareTo(String anotherString)
先看下面API文档的介绍:
int i = str1.compareTo("abd");
System.out.println(i);
int k = str1.compareTo("abf");
System.out.println(k);
int t = "abd”. CompareTo(str1);
System.out.println(t);
int j = "abf”. CompareTo(str1);
System.out.println(j);
int g = str1.compareTo(str1);
System.out.println(g);
int f = str1.compareTo("abcdefg");
System.out.println(f);
int r = "abcdefg”. CompareTo(str1);
System.out.println(r);
运行结果:
-1
-3
1
3
0
-3
3
7. compareToIgnoreCase(String star)
先看下面API文档的介绍:
int i = str1.compareToIgnoreCase("ABCD");
System.out.println(i);
int f = str1.compareTo("ABCD");
System.out.println(f);
运行结果:
0
32
8. concat(String star):将指定字符串连接到此字符串的结尾
String s1 = str1.concat("ABCD");
System.out.println(s1);
String s2 = str.concat("");
System.out.println(s2);
运行结果:
abcdABCD
abcd
9. copyValueOf(char[] data):返回指定数组中表示该字符序列的 String
静态方法
char[] data = {'a','b','c','d','e','f'};
String s1 = String.copyValueOf(data);
System.out.println(s1);
运行结果:
abcdef
10. copyValueOf(char[] data, int offset, int count):返回指定数组中表示该字符序列的 String
char[] data = {'a','b','c','d','e','f'};
String s1 = String.copyValueOf(data,3,3);
System.out.println(s1);
运行结果:
def
11. endsWith(String suffix):测试此字符串是否以指定的后缀结束
boolean isd = str1.endsWith("d");
System.out.println("此字符串是否以d结尾:"+isd);
boolean isf = str1.endsWith("f");
System.out.println("此字符串是否以f结尾:"+isf);
运行结果:
此字符串是否以d结尾:true
此字符串是否以f结尾:false
而与endsWith(String suffix)类似的方法有下面两个:
startsWith(String prefix)
startsWith(String prefix, int toffset)
这两个的方法是测试此字符串是否以指定的后缀开始
12. equals(Object anObject):将此字符串与指定的对象比较
boolean iseq1 = str1.equals("abcd");
System.out.println(iseq1);
boolean iseq2 = str1.equals("abc");
System.out.println(iseq2);
运行结果:
true
false
13. equalsIgnoreCase(String anotherString):将此 String 与另一个 String 比较,不考虑大小写
boolean iseq1 = str1.equalsIgnoreCase("ABCD");
System.out.println(iseq1);
运行结果:
true
14. getBytes():将字符串转化为字节数组
byte[] data = str1.getBytes();
for (int i=0;i<data.length;i++){
System.out.print(data[i]+"\t");
}
运行结果:
97 98 99 100
15. indexOf(int ch):返回指定字符在此字符串中第一次出现处的索引
int t = str1.indexOf(96);
System.out.println(t);
int i = str1.indexOf(97);
System.out.println(i);
int k = str1.indexOf(99);
System.out.println(k);
int f = str1.indexOf(101);
System.out.println(f);
运行结果:
-1
0 本文来自 www.gjrencai.com
2
-1
16. 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);
运行结果:
4
2
-1
17. indexOf(String star):返回指定子字符串在此字符串中第一次出现处的索引
int t = str2.indexOf("a");
System.out.println(t);
int i = str2.indexOf("c");
System.out.println(i);
int k = str2.indexOf("d");
System.out.println(k);
int f = str2.indexOf("e");
System.out.println(f);
运行结果:
2
3
-1
18. indexOf(String star, int fromIndex):返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始
int i = str2.indexOf("a", 3);
System.out.println(i);
int t = str2.indexOf("c", 1);
System.out.println(t);
int k = str2.indexOf("a",5);
System.out.println(k);
运行结果:
2
-1
19. isEmpty():当且仅当 length() 为 0 时返回 true
boolean isempty1 = str1.isEmpty();
System.out.println(isempty1);
boolean isempty2 = "".isEmpty();
System.out.println(isempty2);
运行结果:
false
true
下面几个方法与上面indexOf()是相对应的,只不过是返回最后一次出现的索引
20. lastIndexOf(int ch)
int i = str2.lastIndexOf(97);
System.out.println(i);
int k = str2.lastIndexOf(101);
System.out.println(k);
运行结果:
4
-1
lastIndexOf(int ch, int fromIndex)
lastIndexOf(String star)
lastIndexOf(String star, int fromIndex)
21. substring(int beginIndex):返回一个新的字符串,它是此字符串的一个子字符串。该子字符串从指定索引处的字符开始,直到此字符串末尾
String s1 = str2.substring(4);
System.out.println(s1);
String s2 = str2.substring(2);
System.out.println(s2);
运行结果:
abcd
cdabcd
22. 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);
运行结果:
abc
cdabc
23. toCharArray():将此字符串转换为一个新的字符数组
char[] c = str1.toCharArray();
for (int i=0;i<c.length;i++){
System.out.print(c[i]+"\t");
}
运行结果:
a b c d
24. toLowerCase():将此 String 中的所有字符都转换为小写
String str3 = "ABCDABCD";
String str4 = "AcbdABcD";
String s1 = str3.toLowerCase();
System.out.println(s1);
String s2 = str4.toLowerCase();
System.out.println(s2);
运行结果:
abcdabcd
acbdabcd
下面是main函数:
public static void main(String[] args) {
String str1 = "abcd";
String str2 = "abcdabcd";
int len = str1.length();
System.out.println("字符串的长度:"+len);
// for (int i=0;i<len;i++){
// char c =str.charAt(i);
// System.out.println("下标"+i+"的值:"+c);
// }
// for (int i=0;i<len;i++){
// int k = str.codePointAt(i);
// System.out.println("下标"+i+"的值:"+k);
// }
// int k = str.codePointBefore(len);
// System.out.println("下标"+len+"之前的值:"+k);
// int k = str.codePointCount(0, len);
// System.out.println("0到"+len+"之前的值:"+k);
// int k = str.codePointCount(0, len-2);
// System.out.println("0到"+(len-2)+"之前的值:"+k);
// int i = str.compareTo("abd");
// System.out.println(i);
// int k = str.compareTo("abf");
// System.out.println(k);
// int t = "abd”. CompareTo(star);
// System.out.println(t);
// int j = "abf”. CompareTo(star);
// System.out.println(j);
// int g = str.compareTo(star);
// System.out.println(g);
// int f = str.compareTo("abcdefg");
// System.out.println(f);
// int r = "abcdefg”. CompareTo(star);
// System.out.println(r);
// int i = str.compareToIgnoreCase("ABCD");
// System.out.println(i);
// int f = str.compareTo("ABCD");
// System.out.println(f);
// String str1 = str.concat("ABCD"); 不要随便采集www.gjrencai.com的内容
// System.out.println(str1);
// String str2 = str.concat("");
// System.out.println(str2);
// char[] data = {'a','b','c','d','e','f'};
// String str1 = String.copyValueOf(data);
// System.out.println(str1);
// char[] data = {'a','b','c','d','e','f'};
// String str1 = String.copyValueOf(data,3,3);
// System.out.println(str1);
// boolean isd = str.endsWith("d");
// System.out.println("此字符串是否以d结尾:"+isd);
// boolean isf = str.endsWith("f");
// System.out.println("此字符串是否以f结尾:"+isf);
// boolean iseq1 = str.equals("abcd");
// System.out.println(iseq1);
// boolean iseq2 = str.equals("abc");
// System.out.println(iseq2);
// boolean iseq1 = str.equalsIgnoreCase("ABCD");
// System.out.println(iseq1);
// byte[] data = str.getBytes();
// for (int i=0;i<data.length;i++){
// System.out.print(data[i]+"\t");
// }
// int t = str.indexOf(96);
// System.out.println(t);
// int i = str.indexOf(97); gjrencai.com本来来自高级人才网
// System.out.println(i);
// int k = str.indexOf(99);
// System.out.println(k);
// int f = str.indexOf(101);
// System.out.println(f);
// 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);
// int t = str2.indexOf("a");
// System.out.println(t);
// int i = str2.indexOf("c");
// System.out.println(i);
// int k = str2.indexOf("d");
// System.out.println(k);
// int f = str2.indexOf("e");
// System.out.println(f);
// int i = str2.indexOf("a", 3);
// System.out.println(i);
// int t = str2.indexOf("c", 1);
// System.out.println(t);
// int k = str2.indexOf("a",5);
// System.out.println(k);
// String star = str1.intern();
// System.out.println(star);
// System.out.println(str1);
// boolean isempty1 = str1.isEmpty();
// System.out.println(isempty1);
// boolean isempty2 = "".isEmpty();
// System.out.println(isempty2);
// int i = str2.lastIndexOf(97);
// System.out.println(i);
// int k = str2.lastIndexOf(101);
// System.out.println(k);
// String s1 = str2.substring(4);
// System.out.println(s1);
// String s2 = str2.substring(2);
// System.out.println(s2);
// String s1 = str2.substring(4,7);
// System.out.println(s1);
// String s2 = str2.substring(2,7);
// System.out.println(s2);
// char[] c = str1.toCharArray();
// for (int i=0;i<c.length;i++){
// System.out.print(c[i]+"\t");
// }
// String str3 = "ABCDABCD";
// String str4 = "AcbdABcD";
// String s1 = str3.toLowerCase();
// System.out.println(s1);
// String s2 = str4.toLowerCase();
// System.out.println(s2);
// String str3 = "ABC D AB C D";
// String s1 = str3.trim();
// System.out.println(s1);
String s = String.valueOf(false);
System.out.println(s);