String类常用方法

来源:互联网 发布:单机手游推荐不要网络 编辑:程序博客网 时间:2024/05/16 18:06

字符串类是Java中常用的类,在项目开发中的重要性毋庸置疑。最近学习了一些String类中常用的方法,现在来总结一下。

既然是类,我们用到的字符串就是一个个的对象,但是String类是不可变类,即一个String对象被创建后,这个对象的实体是不可变的,不可以修改字符串的值。

常用构造方法:

  • 字符串常量构造:
    String s1=new String("hello")
  • 直接赋值构造:
    String s2 ="helloworld"
  • 字符数组构造:
    char a[]={'y','s','g'}
    String s3=new String(a)

一般直接构造就好了,如果有特殊需要可以用其他的构造方法。可以查询相关的文档,在Eclipse中按住Ctrl,然后鼠标点击即可查看String类的源码。

由于字符串常量是对象,我们可以把字符串常量的引用赋值给一个字符串变量。例如:

Strng s1,s2;s1="hello world";s2="hello world";

此时s1、s2具有相同的引用,指向有相同的实体。

常用方法

  • length()方法:返回一个字符串的长度,常用在循环中。
  • equals(String s)方法:比较当前字符的值是否与参数指定的字符串的值相等。
    平常我们经常用==判断两个值是否相等,但是当比较的是同一个字符串不同的引用时,会有不同的结果。比如:
String a="ysgncss";String b="ysgncss";a.equals(b);    //比较引用对应的值,都是ysgncss,返回truea==b   //比较是否为同一引用,这里是同一个字符串的引用,返回trueString c=new String("ysgncss");String d=new String("ysgncss");c.equals(d);    //比较引用对应的值,都是ysgncss,返回truea==b   //比较是否为同一引用,这里是两个对象,为不同的引用,返回false
  • startsWith(String s):判断字符串是否以参数字符串s开头,返回一个布尔值。
  • regionMatches()方法:该方法可以用来判断字符串中包含多少个指定的字符串。有4个参数,第1个参数指定从什么位置开始指定子串,其中子串的长度由第4个参数给定;第二个参数给定要匹配的字符串;第3个参数指定给定字符串开始的位置,长度也由第4个参数给定。例如:
int number=0;   //记录字符串中"en"的个数String s="student,enable,client";for(int i=0;i<s.length();i++){  //每次从s中的i位置开始截取子串,长度为2;匹配"en"字符串从0开始,2个字符串长度的子串,即"en"  if(s.regionMathes(i,"en",0,2)){     number++;  }}
  • contains(String s)方法:判断字符串中是否包含s字符串。
  • substring(int start,int end)方法:获得当前字符串的子串。子串包括start处的字符串,不包括end处的字符串。
  • indexOf(String s)方法:从头开始检索字符串s出现的位置,并返回该位置,如果没有出现字符串,返回-1。
  • compareTo(String s)方法:按字典序与参数s比较大小,相同返回0;当前字符串大于s,返回正值;否则,返回负值。
  • trim()方法:去掉当前字符串的前后空格。

字符串与其他数据类型的转化

  • 字符串转数字型:调用相应数字封装类的parseX方法。如:
String s="123";int x=Integer.parseInt(s);
  • 数字类转字符串:调用String的valueOf()方法或者用空字符串加一个数字。
String s=String.valueOf(123);String s=""+123;
原创粉丝点击