zoukankan      html  css  js  c++  java
  • java 实现新浪微博内容计数器 Java问题通用解决代码

    http://www.mr3g.net/?p=220
    参考sina的js版本而来,费弄最多的时间就是java对ansii码的判断了,js直接就是isascii()函数就可以实现了,java还要想办法
    最后参考了两篇文章,才整出来这个判断
     
     
    js代码:

     
    - (int)sinaCountWord:(NSString*)s

    {

        int i,n=[s length],l=0,a=0,b=0;

        unichar c;

        for(i=0;i<n;i++){

            c=[s characterAtIndex:i];

            if(isblank(c)){

                b++;

            }else if(isascii(c)){

                a++;

            }else{

                l++;

            }

        }

        if(a==0 && l==0) return 0;

        return l+(int)ceilf((float)(a+b)/2.0);

    }

    参考js版本,java实现代码:

          /**
           * 新浪微博内容计数器
           *
           * @param s
           * @return
           */
          public static int sinaCountWord(String s) {
                int i, n = s.length(), l = 0, a = 0, b = 0;
     
                char c;
     
                for (i = 0; i < n; i++) {
     
                      c = s.charAt(i);
     
                      if (Character.isWhitespace(c)) {
     
                            b++;
     
                      } else if (c >= 0 && c <= 127) {
     
                            // } else if (!Character.isLetter(c)) {
                            a++;
     
                      } else {
                            l++;
     
                      }
     
                }
     
                if (a == 0 && l == 0)
                      return 0;
     
                return l + (int) Math.ceil((float) (a + b) / 2.0);
          }

     
    参考文章链接:
    两个判断方法原理是一样的,只不过一个实现的是用十进制判断,另一个是16进制
    //这个判断实现的是,用数字来判断,就是16进制0x00的十进制值
    if(ch>=127||ch<0)return false;
     
    //这个判断实现的是,用字节比较16进制(0x00)内容
    #define UTF8_ASCII(byte) (((unsigned char)(byte)>=0x00)&&((unsigned char)(byte)<=0x7F)) 
     
     
  • 相关阅读:
    js实现深拷贝的几种方法
    禁止浏览器的默认行为 图片拖动 复制 剪切 右击
    祈祷奇迹,其实不如无尽的练习
    洛谷P4643 [国家集训队]阿狸和桃子的游戏 & 初赛心情
    Re:prime 关于质数的算法
    【洛谷有题】NOIP 2014 提高组初赛试题 订正 网络协议 检索/比较次数计算
    补码的快速计算
    2020洛谷初赛模拟 订正
    【洛谷有题】NOI 笔试题库(非初赛)订正
    树状数组小结
  • 原文地址:https://www.cnblogs.com/svennee/p/4082832.html
Copyright © 2011-2022 走看看