`
剑&箫
  • 浏览: 53560 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

String类常用方法总结

    博客分类:
  • Java
阅读更多
自己对字符串的各种方法不太熟悉,今天把主要的方法都试了一遍,简单的总结如下(如有不正确的地方欢迎指正):
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 str)
先看下面API文档的介绍:




int i = str1.compareToIgnoreCase("ABCD");
System.out.println(i);
int f = str1.compareTo("ABCD");
System.out.println(f);
运行结果:
0
32

8. concat(String str):将指定字符串连接到此字符串的结尾
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
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 str):返回指定子字符串在此字符串中第一次出现处的索引
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 str, 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 str)
lastIndexOf(String str, 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(str);
// System.out.println(t);
// int j = "abf".compareTo(str);
// System.out.println(j);
// int g = str.compareTo(str);
// System.out.println(g);
// int f = str.compareTo("abcdefg");
// System.out.println(f);
// int r = "abcdefg".compareTo(str);
// 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");
// 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);
// 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 str = str1.intern();
// System.out.println(str);
// 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);

}











  • 大小: 18.8 KB
  • 大小: 4.1 KB
3
3
分享到:
评论

相关推荐

    java String类常用方法练习小结

    【Java String类常用方法详解与实战】 在Java编程语言中,`String`类是一个非常重要的类,它代表不可变的字符序列。所有的字符串字面值(例如:"abc")都是`String`类的实例。本篇文章将深入探讨`String`类的一些...

    Java中String类中的常用方法.TXT

    简单总结可以下Java中String类中的常用方法

    Java-String类的常用方法总结.pdf

    在这个总结中,我们将深入探讨String类的一些核心特性和方法。 首先,String类位于`java.lang`包中,这意味着它对所有Java程序都是自动导入的,无需额外引用。String类被声明为final,这意味着我们无法创建其子类,...

    有关Java String常用方法的总结.docx

    有关Java String常用方法的总结

    JAVA常用类总结

    JAVA常用类,java封装类,String类和StringBuffer类......

    POI操作Excel常用方法总结

    这篇博客文章“POI操作Excel常用方法总结”可能详细介绍了如何利用Apache POI库在Java环境中读写Excel文件。以下是对该主题的一些关键知识点的详细说明: 1. **Apache POI介绍**: Apache POI是开源项目,提供了...

    简单的string类

    这个简单的`string`类介绍将带我们回顾基础,深入理解其内部机制和常用方法。 首先,`std::string`是C++标准库中的一个类模板,它表示可变长度的字符序列。在声明时,你可以通过构造函数初始化字符串,例如: ```...

    C#常用类总结

    本篇将对一些常见的C#类进行深入的总结,帮助C#开发者更好地理解和应用。 首先,我们要提到的是`System.Object`,它是所有C#类的基类。每个类都直接或间接地继承自它,包含了一些基本的方法,如`ToString()`、`...

    Java的String的常用方法

    String的常用方法归纳与总结 char charAt(int index) 返回指定索引处的 char 值。 int compareTo(Object o) 把这个字符串和另一个对象比较。 int compareTo(String anotherString) 按字典顺序比较两个字符串。 int ...

    c++中的string常用函数用法总结.doc

    c++中的string常用函数用法总结.doc

    为JavaScript中的String添加一些常用方法

    这篇博文“为JavaScript中的String添加一些常用方法”正是探讨了如何扩展String对象,添加自定义方法以增强其功能。 首先,我们可以看到一个名为`additionStringFunc.js`的文件,这很可能是博主为了实现这些额外...

    String方法

    总结了String的常用方法,能让你更好的熟练应用String

    JavaScript String 对象常用方法总结

    以下是对String对象常用方法的详细说明: 1. **charAt(index)**:此方法返回在指定索引处的字符。例如,`"hello".charAt(1)`会返回`"e"`。 2. **concat(string2, string3, ...)**:这个方法用于连接两个或多个字符...

    Java常用类总结

    字符串操作如连接、查找、替换等都可以通过String类的方法完成。`StringBuilder`和`StringBuffer`在需要频繁修改字符串内容时更为高效,因为它们是可变的。 `java.util.Date`和`java.time`包中的类是处理日期和时间...

    Spring JdbcTemplate 常用方法整理

    本文将深入探讨Spring JdbcTemplate的常用方法,并结合提供的`JsonBean.java`和`JdbcUtils.java`文件,来理解其在实际应用中的使用。 首先,JdbcTemplate的核心功能在于它提供了一系列的方法来执行SQL语句,包括...

    js常用方法总结

    1. indexOf(): 方法可返回某个指定的字符串值在字符串中首次...stringObject.indexOf(searchvalue,fromindex) 提示和注释 注释:indexOf() 方法对大小写敏感! 注释:如果要检索的字符串值没有出现,则该方法返回 -1。

    用我工作经历总结的java常用方法和注意的问题

    在Java编程中,掌握一些常用的方法和注意事项是提高效率的关键。以下是一些基于提供的内容整理出的Java知识点: 1. **类型转换**: - `String` 转 `int`:通过 `Integer.parseInt()` 方法将字符串转换为整型。如 `...

    java常用类总结.docx

    在Java中,`String`类是最常用的类之一,它代表不可变的字符序列。`String`类提供了丰富的操作字符串的方法,如`equals()`用于比较字符串内容是否相同,而不仅仅是比较引用。在`equals()`方法中,如果比较的对象是`...

    Java String类的常用方法汇总

    在这个详细的总结中,我们将深入探讨String类的一些关键方法,这些方法对于理解和操作字符串至关重要。 首先,String类是在`java.lang`包中定义的,这意味着它在每个Java程序中都自动导入,无需额外的import语句。...

Global site tag (gtag.js) - Google Analytics