美文网首页
codewars记录 字符串

codewars记录 字符串

作者: 伥依 | 来源:发表于2019-01-17 15:12 被阅读0次

    //输入n 计算 1+1/4+1/7+......+1/3(n-1) 返回两位小数并转化为String

    //遍历字符串查看小于m的字母

    //将字符串后四位以外的字符全部换为#

    //判断输入的字符串是否有重复,有重复返回false;没有返回ture

    //判断一个数n是否能被开方

    //将一串英文根据空格分解,找出最短的单词的长度

    //按照空格分割字符串并找出最大和最小的数。

    public static String seriesSum(int n) {//输入n 计算 1+1/4+1/7+......+1/3(n-1) 返回两位小数并转化为String

        int m = (n-1)*3+1;

        double sum = 0;

        for(int i=1;i<=m;i+=3){

          sum = sum +1.0/i;

        }

    ①   BigDecimal bd = new BigDecimal(sum);

        bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP);

        String res ="" + bd;

        System.out.println(res);

        return res;

       ② return String.format("%.2f", sum);//改进方法

    }

    public static String printerror(String s){//遍历字符串查看小于m的字母

    String res = null;

    int n=0,m=0;

    for(int i=0;i<s.length();i++){

    int a=(int)s.charAt(i);

    int b=(int)'m';

    if(a<=b){

    n++;

    }else if(a>b){

    n++;

    m++;

    }

    res = m +"/" + n;

    }

    System.out.println("res" +res);

    return res;

    }

    public static String maskify(String str) {//将字符串后四位以外的字符全部换为#

    String strin = new StringBuffer(str).reverse().toString();

    String res="";

    for(int i=0;i<strin.length();i++){

    if(i<4){

    res+=strin.charAt(i);

    }else{

    res+="#";

    }

    }

    String resa=new StringBuffer(res).reverse().toString();

    System.out.println(resa);

            return resa;

        }

    public static boolean  isIsogram(String str) {//判断输入的字符串是否有重复,有重复返回false;没有返回ture

            //备注 不要将返回值设成全局变量容易出错

    String newstr=str.toLowerCase();

    for(int i=0;i<newstr.length();i++){

    char a=newstr.charAt(i);

    String c=newstr.substring(i+1);

    int b=c.indexOf(a);

    if(b == -1){

    }else{

    System.out.println("失败");

    return false;

    }

    }

    System.out.println("成功");

    return true;

        }

    public static boolean isSquare(int n){//判断一个数n是否能被开方

    double a=Math.sqrt(n);

    int b=(int)a;

    if(a==b){

    System.out.println("成功");

    return true;

    }else{

    System.out.println("失败");

    return false;

    }

    }

    public static int findShort(String str){//将一串英文根据空格分解,找出最短的单词的长度。

    int res=100;

    String a="";

    for(int i=0;i<str.length();i++){

    char b=str.charAt(i);

    if(Character.isSpaceChar(b)){

    System.out.println(a);

    if(a.length()<res){

    res = a.length();

    }else{

    }

    a="";

    }else{

    a+=str.charAt(i);

    }

    }

    System.out.println(res);

    return res;

    }

    public static String HighAndLow(String numbers) {//按照空格分割字符串并找出最大和最小的数。按照空格分割字符串简单方法:string[] s = numbers.split(" ");

    String[] s = numbers.split(" ");   

    int heigh= Integer.parseInt((s[0]));

        int low=heigh;

        int newnumber=0;

        for(int i=0;i<s.length;i++){

          newnumber = Integer.parseInt(s[i]);

          if(newnumber<low){

          low=newnumber;

          }else if(newnumber>heigh){

          heigh=newnumber;

          }else{

          }

        }

        System.out.println(""+heigh+" "+low);

        String res = ""+heigh+" "+low;

        return res;

      }

    相关文章

      网友评论

          本文标题:codewars记录 字符串

          本文链接:https://www.haomeiwen.com/subject/htyidqtx.html