java 中String类的经常使用方法总结,带你玩转String类。

 

String类:html

String类在java.lang包中,java使用String类建立一个字符串变量,字符串变量属于对象。String类对象建立后不能修改,StringBuffer & StringBuilder 类。这时咱们会问,为何咱们String变量赋值不就是改变了吗?其实不是的,赋值后将会生成新的对像来存放新的内容,原先的对象依旧在内存中,可是s不在指向它,那么这个对象就会成为垃圾内存,在某一个特定的时刻有Java虚拟机回收。 详情解释请点击    包含在一对双引号之间。java

String字符串变量的建立:正则表达式

声明:     String 变量名;api

         String str;

声明并初始化:  String 变量名="初始值";数组

String str = "挨点博客";

String经常使用方法:工具

  一、int length();  语法:字符串变量名.length();  返回值为 int 类型。获得一个字符串的字符个数(中、英、空格、转义字符皆为字符,计入长度)学习

    

        String a="挨点aidian \t\n";
        int l = a.length();
        System.out.println(l);

运行结果:11

二、char charAt(值);  语法 :字符串名.charAt(值);  返回值为 char 类型。从字符串中取出指定位置的字符 测试

     String str="张三疯";
        char c = str.charAt(2);  
        System.out.println("指定字符为:" + c); 

运行结果:指定字符为:疯

   三、char  toCharArray();  语法 :字符串名.toCharArray();  返回值为 char 数组类型。将字符串变成一个字符数组 
ui

 
 
String str="张三疯";
char c[] = str.toCharArray();  
for (int i = 0; i < c.length; i++) 
System.out.println("转为数组输出:" + c[i]);

      运行结果:spa

转为数组输出:张
转为数组输出:三
转为数组输出:疯

 四、int indexOf("字符")  语法 :字符串名.indexOf("字符");字符串名.indexOf("字符",值);查找一个指定的字符串是否存在,返回的是字符串的位置,若是不存在,则返回-1 。 

    in lastIndexOf("字符") 获得指定内容最后一次出现的下标

 
 
String str="只为挨你近一点";
int a1 = str.indexOf("你");// 查找字符你的位置  
int a2 = str.indexOf("为", 2);// 查找为的位置,从第3个开始查找
int a3 = str.lastIndexOf("点");  
System.out.println("你的位置为:" + a1);  
System.out.println("为的位置为:" + a2);
System.out.println("点最后出现的位置为:" + a3);
运行结果:

你的位置为:3

为的位置为:-1

点最后出现的位置为:7

   五、toUpperCase();  toLowerCase();字符串大小写的转换

String str="hello world";
System.out.println("将字符串转大写为:" + str.toUpperCase());
System.out.println("将字符串转换成小写为:" + str.toUpperCase().toLowerCase());

运算结果:

将字符串转大写为:HELLO WORLD
将字符串转换成小写为:hello world

  六、String[] split("字符")  根据给定的正则表达式的匹配来拆分此字符串。造成一个新的String数组。

String str = "boo:and:foo";
String[] arr1 = str.split(":");
String[] arr2 = str.split("o");
运行结果:
  arr1  //{ "boo", "and", "foo" }
  arr2  //{ "b", "", ":and:f" }

  七、boolean equals(Object anObject)  语法 :字符串变量名.wquals(字符串变量名);  返回值为布尔类型。因此这里用 if 演示。比较两个字符串是否相等,返回布尔值

               String str = "hello";
                      String str1="world";  
                      if(str.equals(str1)) 
                      {  
                       System.out.println("这俩字符串值相等"); 
                      }  
                      else
                      {
                       System.out.println("这俩字符串值不相等");  
                      }
      运行结果:

          这俩字符串值不相等

 

  八、trim();  去掉字符串左右空格  replace(char oldChar,char newChar);新字符替换旧字符,也能够达到去空格的效果一种。

String str = " 挨点博客 "; System.out.println("去掉左右空格后:" + str.trim());

运行结果:

  去掉左右空格后:挨点博客



第二种:
String str = "       挨点博客         ";  
System.out.println("去掉左右空格后:" + str.replace(" ","")); 

运行结果:

  去掉左右空格后:挨点博客

  九、String substring(int beginIndex,int endIndex)  截取字符串 

      String str = "123挨点博客456";  
         System.out.println("截取后的字符为:" + str.substring(0,3));// 截取0-3个位置的内容   不含3 
         System.out.println("截取后字符为:" + str.substring(2));// 从第3个位置开始截取    含2

  运行结果:

    截取后的字符为:123
    截取后字符为:3挨点博客456

 

  十、boolean equalsIgnoreCase(String) 忽略大小写的比较两个字符串的值是否如出一辙,返回一个布尔值

     String str = "HELLO WORLd";
        String str1 = "hello world";
        if(str.equalsIgnoreCase(str1))
        {
            System.out.println("两个字符串相等");
        }
        else
        {
            System.out.println("两个字符串不相等");
        }

运行结果:

    两个字符串相等

 

  十一、boolean contains(String) 判断一个字符串里面是否包含指定的内容,返回一个布尔值

        String str = "HELLO WORLd";
        String str1 = "WO";
        if(str.contains(str1))
        {
            System.out.println("str内容中存在WO");
        }
        else
        {
            System.out.println("抱歉没找着");
        }
运行结果:

  str内容中存在WO

 

  十二、boolean startsWith(String)  测试此字符串是否以指定的前缀开始。返回一个布尔值

     String str = "HELLO WORLd";
        String str1 = "HE";
        if(str.startsWith(str1))
        {
            System.out.println("str内容中存在HE前缀开头");
        }
        else
        {
            System.out.println("抱歉没找着");
        }
运行结果:

  str内容中存在HE前缀开头

 

  1三、boolean endsWith(String)  测试此字符串是否以指定的后缀结束。返回一个布尔值

        String str = "挨点博客";
        String str1 = "博客";
        if(str.endsWith(str1))
        {
            System.out.println("str内容中存在\'博客\'后缀结束");
        }
        else
        {
            System.out.println("抱歉没找着");
        }
运行结果:

  str内容中存在'博客'后缀结束

 

  1四、上面提到了replace方法,接下继续补充一下  String replaceAll(String,String) 将某个内容所有替换成指定内容,   String repalceFirst(String,String) 将第一次出现的某个内容替换成指定的内容

String str = ",,,,,,挨点博客,,,,, "; System.out.println("改变后:" + str.replaceAll(",","a"));

运行结果:改变后:a,,,,,挨点博客,,,,, 
String str = ",,,,,,挨点博客,帅吗,帅吗,,,,, "; System.out.println("改变后:" + str.replaceFirst("帅吗","很帅哦")); 运行结果:改变后:,,,,,,挨点博客,很帅哦,帅吗,,,,,

  巩固的时候查阅了不少资料。给你们推荐一个工具,是一个java使用手册在线版  http://tool.oschina.net/apidocs/apidoc?api=jdk-zh  但愿对大家的学习有帮助,并多多支持下。

如何有错误的、或者有补充的请在评论区评论、我再改正与补充。

  原创内容,转载还望注明来源,谢谢。

相关文章
相关标签/搜索