• Java对字符串进行的操作


    本篇总结归纳对字符串或数组进行相关操作问题

    1. 数组倒序输出
    2. 查找字符串中第一次重复的字符
    3. 查找字符串中第一次没有重复的字符
    4. 删除字符串中重复的元素

    倒序输出问题

    第一种:对于数组

    public int[] ArrayReverse(int[] a){
       int len = a.length;
       int[] b = new int[len-1];  //新建数组用于保存倒序后的数组
       for(int i=len-1;i>=0;i--){
           b[len-1-i] = a[i];
       }
       return b;
    }

    第二种:对于字符串我们可以把它转化成字符数组,在采用for循环来做,或者将字符串转换成StringBuffer,利用StringBuffer的reverse方法

    //for循环输出
    public String ArrayReverse(String s){
        char[] c = s.toCharArray();
        for(int i = c.length-1; i>=0; i++){
            String rev += c[i];
        }
        return rev;
    }
    //StringBuffer操作
    public String ArrayReverse(String s){
         StringBuffer sb = new StringBuffer(s);
         sb.revese();
         String newS = sb.toString();
         return newS;
    }

    查找字符串中第一次重复的字符

    //查找字符串中第一次重复的字符
    public int FindFirstDupChar(String str) {
            int i;
            for (i = 0; i < str.length(); i++) {
                if( str.indexOf(str.charAt(i), i+1) != -1) {
                    return i;
                }
            }
            if (i == str.length()) {
                return -1;
            }
            return i;   //返回第一次重复的字符位置
    }

    查找字符串中第一次没有重复的字符

    public int FindFirstSingleChar(String str){
            int i;
            for(i = 0; i<str.length(); i++){
                char c = str.charAt(i);
                if(str.indexOf(c)==str.lastIndexOf(c)){ //判断是否有重复,返回重复位置
                    return i;
                }
            }
            if (i == str.length()) {  //没有返回-1
                return -1;
            }
            return i;
    }

    删除字符串中重复的元素

    第一种:通过list集合的contains方法

    //删除字符串中重复的元素
    public String deleteDupChar(String str){
            
            List list = new ArrayList();
            char[] c = str.toCharArray();
            
            for(int i = 0; i<c.length; i++){
                if(!list.contains(c[i])){  //如果不存在的话添加到集合中
                    list.add(c[i]);
                }
            }
            String s = list.toString();
            return s;
    }

    第二种:利用Set集合中不能添加重复元素的特性

    public String deleteDupChar(String str){
    
        char[] c = str.toCharArray();
        Set s = new HashSet();
        for(int i = 0;i<c.length;i++){
             s.add(c[i])
        }
        return s.toString();
    }
  • 相关阅读:
    PHP——语句和时间函数
    数据库——环境初建改端口和密码(转)
    PHP——初学,基础
    数据库——常用函数
    数据库——触发器(转)
    数据库——浅谈数据库中的存储过程(转)
    JavaScrip——简单练习(抓错误信息,for循环,日期)
    数据库——练习题答案
    django 创建APP 后找不到 templates文件夹下的Html文件。
    POSTGRESQL 9.1 FATAL: password authentication failed for user "postgres"
  • 原文地址:https://www.cnblogs.com/love-Stefanie/p/6938034.html
Copyright © 2020-2023  润新知