public class UsingString
{
    public static void testFindStr(String str)
    {
        System.out.println("is 的位置"+str.indexOf("is"));//返回第一次出现的位置若找不到返回负数
        System.out.println("is的位置"+str.indexOf("is",4));//从指定的位置开始查找
        System.out.println("is的位置"+str.lastIndexOf("is"));//返回最后一次出现的位置找不到返回负数
        System.out.println("is的位置"+str.lastIndexOf("is",4));// 从指定的位置开始查找    
    }
 
    public static void testSubStr(String str)
    {
        System.out.println(str.substring(2));//从2位置向后截取默认末尾位置是字符串的末尾
        System.out.println(str.substring(2,9));//从2位置向后截取默认末尾位置是字符串的末尾
 
    }
    public static void testReplayStr(String str)
    {
        System.out.println(str.replace('i','I'));//将所有的i替换为I
        System.out.println(str.replaceAll("Is", "is"));//将所有的Is替换为is
        System.out.println(str.replaceFirst("is", "Is"));//将第一个Is替换为is
    }
 
    public static void testToUpperOrLower(String str)
    {
        System.out.println(str.toUpperCase());//全部变成大写字母
        System.out.println(str.toLowerCase());//全部变成小写字母
    }
 
    public static void testCharAt(String str)
    {
        System.out.println(str.charAt(2));//获取第2个字母  从0开始
        System.out.println(str.toCharArray());//将字符串转换为字符数组 长度为字符串长度
    }
    public static void testCompare(String str)
    {
        System.out.println(str.compareTo("I am in Beijing"));//若大于则返回一个正数 小于返回一个负数 等于返回0
        System.out.println(str.compareToIgnoreCase("I am in Beijing"));//忽略大小写的方式比较    若大于则返回一个正数 小于返回一个负数 等于返回0
    }
 
    public static void testRegex( )//支持正则表达式
    {
        String str="aab       aaaa bb   ab";
        String pattern1="^[a-zA-Z| ]*";
        System.out.println(str.matches(pattern1)); 
        System.out.println(str.replaceAll("\\s{2,}",  " "));
        System.out.println(str.replaceFirst("\\s{2,}"," "));
        String []ss=str.split("\\s{1,}");//按照空格分隔字符串
        for(int i=0;i<ss.length;i++)
            System.out.println(ss[i]);
 
 
        String []ss1=str.split("\\s{1,}",3);//按照空格分隔字符串  最大分成三段
        for(int i=0;i<ss1.length;i++)
            System.out.println(ss1[i]);
    }
    public static void main(String[]args)
    {
        String string="This is string object!";
        UsingString.testFindStr(string);
        UsingString.testSubStr(string);
        UsingString.testReplayStr(string);
        UsingString.testToUpperOrLower(string);
        UsingString.testCharAt(string);
        UsingString.testCompare(string);
        UsingString .testRegex();
    }

使用string的更多相关文章

  1. 透过WinDBG的视角看String

    摘要 : 最近在博客园里面看到有人在讨论 C# String的一些特性. 大部分情况下是从CODING的角度来讨论String. 本人觉得非常好奇, 在运行时态, String是如何与这些特性联系上的 ...

  2. JavaScript String对象

    本编主要介绍String 字符串对象. 目录 1. 介绍:阐述 String 对象的说明以及定义方式. 2. 实例属性:介绍 String 对象的实例属性: length. 3. 实例方法:介绍 St ...

  3. ElasticSearch 5学习(9)——映射和分析(string类型废弃)

    在ElasticSearch中,存入文档的内容类似于传统数据每个字段一样,都会有一个指定的属性,为了能够把日期字段处理成日期,把数字字段处理成数字,把字符串字段处理成字符串值,Elasticsearc ...

  4. [C#] string 与 String,大 S 与小 S 之间没有什么不可言说的秘密

    string 与 String,大 S 与小 S 之间没有什么不可言说的秘密 目录 小写 string 与大写 String 声明与初始化 string string 的不可变性 正则 string ...

  5. js报错: Uncaught RangeError: Invalid string length

    在ajax请求后得到的json数据,遍历的时候chrome控制台报这个错误:Uncaught RangeError: Invalid string length,在stackoverflow查找答案时 ...

  6. c# 字符串连接使用“+”和string.format格式化两种方式

    参考文章:http://www.liangshunet.com/ca/201303/218815742.htm 字符串之间的连接常用的两种是:“+”连接.string.format格式化连接.Stri ...

  7. 【手记】注意BinaryWriter写string的小坑——会在string前加上长度前缀length-prefixed

    之前以为BinaryWriter写string会严格按构造时指定的编码(不指定则是无BOM的UTF8)写入string的二进制,如下面的代码: //将字符串"a"写入流,再拿到流的 ...

  8. JavaScript中String对象的方法介绍

    1.字符方法 1.1 charAt() 方法,返回字符串中指定位置的字符. var question = "Do you like JavaScript?"; alert(ques ...

  9. 在多线程编程中lock(string){...}隐藏的机关

    常见误用场景:在订单支付环节中,为了防止用户不小心多次点击支付按钮而导致的订单重复支付问题,我们用 lock(订单号) 来保证对该订单的操作同时只允许一个线程执行. 这样的想法很好,至少比 lock( ...

  10. BCL中String.Join的实现

    在开发中,有时候会遇到需要把一个List对象中的某个字段用一个分隔符拼成一个字符串的情况.比如在SQL语句的in条件中,我们通常需要把List<int>这样的对象转换为“1,2,3”这样的 ...

随机推荐

  1. 获取Android studio中的SHA1

    因为想要弄一下百度地图. 然后要申请一个key. 需要SHA1. 按window键 +R 输入cmd 进入C:\Users\Administrator路径 输入cd .android,进行.andro ...

  2. postgre sql 字符串转为integer类型

    select cast(setting_value as integer) from ud_organization_setting. select cast('123123' as integer) ...

  3. 分离数据库(Detach database).

    Many times, we often needs to detach our databases if we want to copy it to another database instanc ...

  4. sql server 2005 大数据量插入性能对比

    sql server 2005大数据量的插入操作 第一,写个存储过程,传入参数,存储过程里面是insert操作, 第二,用System.Data.SqlClient.SqlBulkCopy实例方法, ...

  5. php函数serialize()与unserialize()

    serialize()和unserialize()在php手册上的解释是: serialize — Generates a storable representation of a value ser ...

  6. vs 2013 编译zlib

    zlib下载地址: http://pan.baidu.com/s/1pJqTcoV \zlib-1.2.8\contrib\vstudio\vc10\zlibvc.sln 打开这个文件, 根据提示, ...

  7. windows API 统计系统字体

    最近工作中遇到一个需求,需要统计当前系统中包含的所有字体.在网上逛了一圈后发现了EnumFontFamiliesEx这个API好像就可以实现这个功能.这里将自己对这个API的理解做一个记录,算是对这块 ...

  8. Java学习笔记——动态代理

    所谓动态,也就是说这个东西是可变的,或者说不是一生下来就有的.提到动态就不得不说静态,静态代理,个人觉得是指一个代理在程序中是事先写好的,不能变的,就像上一篇"Java学习笔记——RMI&q ...

  9. yzoi1777倒水问题的详细解法

    Description - 问题描述 x.y.z三个容器,其最大容量分别是xMAX升.yMAX升.zMAX升,这里规定100>xMAX>yMAX>zMAX.一开始x是装满了水的,现在 ...

  10. 自动化工具word文档批量转html

    企业有很多的科室,科室的每个人或多或少都会写一些文档,有些文档领导需要浏览,解决的办法是将编辑的文档打印出来,供领导浏览,或是为了节约企业成本,文档就在人与人这间或部门之间copy过来,copy过去. ...