public class StringTest {
     //1.模拟trim方法,去除字符串两端的空格
     public static void main(String[] args) {
         String str = "  ai  kang        ";
         char c = str.charAt(0);
        while (true){
            if(str.startsWith(" ")){
                str = str.substring(1);
            }else if(str.endsWith(" ")){
                str = str.substring(0,str.length()-1);
            }else{
                break;
            }
        }
         System.out.println(str);
     }
 }
public class StringTest01 {
    //2.将一个字符串进行反转,将字符串中指定部分进行反转,比如"abcdefg"反转
    public static void main(String[] args) {
        String str = "abcdefg";
        StringTest01 stringTest01 = new StringTest01();
        String s = stringTest01.StringDemo01(str, 1);
        System.out.println(s);
        String s1 = stringTest01.StringDemo02(str, 1);
        System.out.println(s1);

    }

    //方法一
    public String StringDemo01(String string,int start){
        String str =string;
        char[] c = str.toCharArray();
        for (int i = start; i < str.length()/2; i++) {
            char c1 = c[c.length-i-1];
            c[c.length-i-1] = c[i];
            c[i] = c1;
        }
        return new String(c);
    }

    //方法二
    public String StringDemo02(String string,int start){
        StringBuilder str = new StringBuilder(string.length());
        char[] c = string.toCharArray();
        str.append(string.substring(0,start));
        for(int j = string.length()-1-start;j>=start;j--){
            str.append(c[j]);
        }
        str.append(string.substring(string.length()-start));
        return new String(str);
    }

}
 public class StringTest02 {
     //3.获取一个字符串在另一个字符串中出现的次数如"ab"在"abkkcadkabkebfabkskab"中出现的次数
     public static void main(String[] args) {
         String str = "abkkcadkabkebfabkskab";
         String indexstr = "ab";
         StringTest02 stringTest02 = new StringTest02();
         int i = stringTest02.indexNum(str, indexstr);
         System.out.println(i);

     }
    public int indexNum(String str,String indexstr){
        int num = 0;
        for(;;){
            int i = str.indexOf(indexstr);
            if(i != -1){
                str = str.substring(i+indexstr.length());
                num++;
            }else{
                return num;
            }
        }

    }
 }

java_String类练习的更多相关文章

  1. java_String类的功能

    String类使用了final修饰不能被继承 实现类Serializable接口,字符串支持序列化 实现了Comparable接口,字符串可以比较大小 内部定义final char[] value用于 ...

  2. java_String类、StringBuilder类、Arrays类、Math类的使用

    String类 java.lang.String 类代表字符串.Java程序中所有的字符串文字(例如 “abc” )都可以被看作是实现此类的实例 构造方法 java.lang.String :此类不需 ...

  3. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  4. Java_String&StringBuilder&StringBuffer类

    目录 一.String类 二."==" 和 "equals"的区别 三.StringBuffer和StringBuilder 一.String类 String为 ...

  5. 作业10:String类

    一.基本案例 1.new String("helloworld") 与 "helloworld" public static void main(String[ ...

  6. C++ 可配置的类工厂

    项目中常用到工厂模式,工厂模式可以把创建对象的具体细节封装到Create函数中,减少重复代码,增强可读和可维护性.传统的工厂实现如下: class Widget { public: virtual i ...

  7. Android请求网络共通类——Hi_博客 Android App 开发笔记

    今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...

  8. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

  9. ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core

    背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...

随机推荐

  1. 如何在Android studio中同时打开多个工程?

    最近学习Android Studio,想同时打开两个Project.但是点击File->Open之后,原有的Project被关闭掉了.怎么在新的窗口中打开Project呢? 解决: 点击Help ...

  2. UI:通讯录实现

    通讯录实现草图: 代码: #pragma mark (.h文件)-------------------------------------------------------------------- ...

  3. Eclipse如何打开Android工程(转载)

    转自:http://www.cnblogs.com/kernel-style/p/3339102.html 一.Eclipse如何打开Android工程 1.你可以在file->new-> ...

  4. 项目迁移腾讯云后,用户反馈,https证书不匹配。

    腾讯云大禹高防大禹BGP同一IP绑定多个证书,用户反馈无法匹配我们域名对应证书.但是浏览器是支持的.定位为客户端不支持sni在运维检查lb及高防证书关联无误,定位发现是用户端httpclient没有设 ...

  5. 洛谷 P3357 最长k可重线段集问题【最大流】

    pre:http://www.cnblogs.com/lokiii/p/8435499.html 和最长k可重区间集问题差不多,也就是价值的计算方法不一样,但是注意这里可能会有x0==x1的情况也就是 ...

  6. 网站SEO优化如何让百度搜索引擎绝的你的网站更有抓取和收录价值呢?_孙森SEO

    今天孙森SEO为大家唠唠网站到底该如何优化才会让百度搜索引擎绝的你的网站更有抓取和收录价值呢? 第一方面:网站创造高品质的内容,可以为用户提供独特的价值. 1.百度作为搜索引擎,网站内容必须满足 搜索 ...

  7. vue中使用element写点击input内部标签(使用模态框传值)

    首先附上源码地址 https://files.cnblogs.com/files/maruihua/vue-tagsinput-master.zip 这个是我修改后的代码.取消了部分功能,添加的一些功 ...

  8. [CQOI 2006]线段树之简单题

    Description 有一个n个元素的数组,每个元素初始均为0.有m条指令,要么让其中一段连续序列数字反转--0变1,1变0(操作1),要么询问某个元素的值(操作2).例如当n=20时,10条指令如 ...

  9. 员工管理系统(集合与IO流的结合使用 beta4.0 ObjectInputStream/ ObjectOutputStream)

    package cn.employee_io; import java.io.Serializable; public class Employee implements Serializable{ ...

  10. html5移动端适配- media query

    iPad部分css适配 - media query 代码如下图:   注:  @media要放在css最下方,防止被覆盖.