精华内容
下载资源
问答
  • Java获取字符串长度

    千次阅读 2019-08-14 16:02:49
    但有时需要以字节单位获得字符串长度。例如,“123abc长城”按字节长度计算是10,而按Unicode计算长度是8。为了获得10,需要从头扫描根据字符的Ascii来获得具体的长度。如果是标准的字符,Ascii的范围是0至255,...

    由于Java是基于Unicode编码的,因此,一个汉字的长度为1,而不是2。但有时需要以字节单位获得字符串的长度。例如,“123abc长城”按字节长度计算是10,而按Unicode计算长度是8。为了获得10,需要从头扫描根据字符的Ascii来获得具体的长度。如果是标准的字符,Ascii的范围是0至255,如果是汉字或其他全角字符,Ascii会大于255。因此,可以编写如下的方法来获得以字节为单位的字符串长度。
    public int getWordCount(String s)
    {
    int length = 0;
    for(int i = 0; i < s.length(); i++)
    {
    int ascii = Character.codePointAt(s, i);
    if(ascii >= 0 && ascii <=255)
    length++;
    else
    length += 2;

        }
        return length;
        
    }
    
    当然,也可以采用正则表达式来简化上面的方法,代码如下:
    public  int getWordCount(String s)
    {
    
        s = s.replaceAll("[^\\x00-\\xff]", "**");
        int length = s.length();
        return length;
    }
    上面代码的基本原理是将字符串中所有的非标准字符(双字节字符)替换成两个标准字符(**,或其他的也可以)。这样就可以直接例用length方法获得字符串的字节长度了。
    

    复制代码

    或者:

    return String.getByte().length() ;
    注意可以输入参数
    return String.getByte(“gbk”).length() ;

    展开全文
  • java 获取字符串长度

    2017-04-05 19:29:00
    因此,可以编写如下的方法来获得以字节为单位的字符串长度。 解决: public int getWordCount(String s) { int length = 0; for (int i = 0; i (); i++) { int ascii = Character.codePointAt(s, i); if (ascii ...
    编程语言:java
    编码方式:Unicode
    问题:
    一般情况下,在屏幕显示上一个汉字所占的大小是字符的两倍。如果直接使用length()方法,获取到的是code unit的数目。
    例如,“123abc长城”.length() 计算是8。如何确定字符串在屏幕上的长度大小?
    分析:
    我们需要一种方法使得汉字的长度是普通字符的两倍。
    为了获得10,需要从头扫描根据字符的Ascii来获得具体的长度。如果是标准的字符,Ascii的范围是0至255,如果是汉
    字或其他全角字符,Ascii会大于255。因此,可以编写如下的方法来获得以字节为单位的字符串长度。
    解决:
    public int getWordCount(String s) {
        int length = 0;
        for (int i = 0; i < s.length(); i++) {
            int ascii = Character.codePointAt(s, i);
            if (ascii >= 0 && ascii <= 255) length++;
            else length += 2;
        }
        return length;
    }
    上面代码的基本原理是将字符串中所有的非标准字符(双字节字符)替换成两个标准字符(**,或其他的也可以)。
    或者:
    public int getWordCount(String s) {
    
        s = s.replaceAll("[^\\x00-\\xff]", "**");
        int length = s.length();
        return length;
    }
    return String.getByte().length() ;
    return String.getByte("gbk").length() ;

    详细请参考 http://www.cnblogs.com/God-/p/6006749.html

    几种编码格式。

    • ASCII 码

    学过计算机的人都知道 ASCII 码,总共有 128 个,用一个字节的低 7 位表示,0~31 是控制字符如换行回车删除等;32~126 是打印字符,可以通过键盘输入并且能够显示出来。

    • ISO-8859-1

    128 个字符显然是不够用的,于是 ISO 组织在 ASCII 码基础上又制定了一些列标准用来扩展 ASCII 编码,它们是 ISO-8859-1~ISO-8859-15,其中 ISO-8859-1 涵盖了大多数西欧语言字符,所有应用的最广泛。ISO-8859-1 仍然是单字节编码,它总共能表示 256 个字符。

    • GB2312

    它的全称是《信息交换用汉字编码字符集 基本集》,它是双字节编码,总的编码范围是 A1-F7,其中从 A1-A9 是符号区,总共包含 682 个符号,从 B0-F7 是汉字区,包含 6763 个汉字。

    • GBK

    全称叫《汉字内码扩展规范》,是国家技术监督局为 windows95 所制定的新的汉字内码规范,它的出现是为了扩展 GB2312,加入更多的汉字,它的编码范围是 8140~FEFE(去掉 XX7F)总共有 23940 个码位,它能表示 21003 个汉字,它的编码是和 GB2312 兼容的,也就是说用 GB2312 编码的汉字可以用 GBK 来解码,并且不会有乱码。

    • GB18030

    全称是《信息交换用汉字编码字符集》,是我国的强制标准,它可能是单字节、双字节或者四字节编码,它的编码与 GB2312 编码兼容,这个虽然是国家标准,但是实际应用系统中使用的并不广泛。

    • UTF-16

    说到 UTF 必须要提到 Unicode(Universal Code 统一码),ISO 试图想创建一个全新的超语言字典,世界上所有的语言都可以通过这本字典来相互翻译。可想而知这个字典是多么的复杂,关于 Unicode 的详细规范可以参考相应文档。Unicode 是 Java 和 XML 的基础,下面详细介绍 Unicode 在计算机中的存储形式。

    UTF-16 具体定义了 Unicode 字符在计算机中存取方法。UTF-16 用两个字节来表示 Unicode 转化格式,这个是定长的表示方法,不论什么字符都可以用两个字节表示,两个字节是 16 个 bit,所以叫 UTF-16。UTF-16 表示字符非常方便,每两个字节表示一个字符,这个在字符串操作时就大大简化了操作,这也是 Java 以 UTF-16 作为内存的字符存储格式的一个很重要的原因。

    • UTF-8

    UTF-16 统一采用两个字节表示一个字符,虽然在表示上非常简单方便,但是也有其缺点,有很大一部分字符用一个字节就可以表示的现在要两个字节表示,存储空间放大了一倍,在现在的网络带宽还非常有限的今天,这样会增大网络传输的流量,而且也没必要。而 UTF-8 采用了一种变长技术,每个编码区域有不同的字码长度。不同类型的字符可以是由 1~6 个字节组成。

    UTF-8 有以下编码规则:

    1. 如果一个字节,最高位(第 8 位)为 0,表示这是一个 ASCII 字符(00 - 7F)。可见,所有 ASCII 编码已经是 UTF-8 了。
    2. 如果一个字节,以 11 开头,连续的 1 的个数暗示这个字符的字节数,例如:110xxxxx 代表它是双字节 UTF-8 字符的首字节。
    3. 如果一个字节,以 10 开始,表示它不是首字节,需要向前查找才能得到当前字符的首字节

    转载于:https://my.oschina.net/u/3342652/blog/873637

    展开全文
  • java获取字符串长度,长度不够补相应的字符串
  • Java获取字符串长度(length()) 在 Java 中,要获取字符串的长度,可以使用 String 类的 length() 方法,其语法形式如下: 字符串名.length();

    Java获取字符串长度(length())

    在 Java 中,要获取字符串的长度,可以使用 String 类的 length() 方法,其语法形式如下:
    字符串名.length();

    展开全文
  • Java String中的length() 方法用于获取字符串长度,并以 in t型变量返回该字符串的长度。语法:length();示例使用 length() 函数获取字符串 strCom2 的长度,并将返回的结果赋值给 int 型变量 length。String ...

    Java String中的 length() 方法用于获取字符串的长度,并以 in t型变量返回该字符串的长度。

    语法:

    length();

    示例

    使用 length() 函数获取字符串 strCom2 的长度,并将返回的结果赋值给 int 型变量 length。

    String strCom2="C语言中文网";

    int length=strCom2.length();

    典型应用

    定义字符串对象 name 与 address,并分别赋值。将字符串 name 与 address 进行相连并赋给字符串 message,使用 length 方法将这 3 个字符串的长度输出,代码如下:

    public static void main(String[]args){

    String name="一棵山茶树";//定义字符串对象

    String address="在一个遥远的小山村";//定义字符串对象

    String message=address+"有"+name;//将字符串对象相连

    System.out.println("字符串:"+name+"\t\t\t长度为:"+name.length());//输出字符串的长度

    System.out.println("字符串:"+address+"\t\t长度为:"+address.length());

    System.out.println("字符串:"+message+"\t长度为:"+message.length());

    }

    运行结果:

    字符串:一颗山茶树                                     长度为:5

    字符串:在一个遥远的小山村                       长度为: 9

    字符串:在一个遥远的小山村有一颗山茶树   长度为:15

    总结

    如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

    本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

    如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

    展开全文
  • Java教程在 Java 中,要获取字符串长度,可以使用 String 类的 length() 方法,其语法形式如下: 字符串名.length(); 例 1 在学生信息管理系统中对管理员密码有这样的规定,即密码长度必须大于 6 位且小于 12 ...
  • JJava 字符串长度public class StringDemo { public static void main(String args[]) { String palindrome = "Dot saw I was Tod"; int len = palindrome.length(); System.out.println( "String Length is : ...
  • Java 手册 实例: public class Length { public static void main(String[] args) { String str = "hgdfasyhgdilufg"; System.out.println(str.length()); } } ...
  • [单选] 带电更换绝缘子或在绝缘子上作业,应保证作业中良好绝缘子片数不少于:110kV()片。 [单选] 施工现场宿舍、办公室等临时用房建筑构件的燃烧性能等级应为();当采用金属夹芯板材时,其芯材的燃烧性能等级应...
  • //创建一个包public class TextLength {//描述字符串长度的类public static boolean isChineseChar(char c) throws Exception{//判断是否是一个汉字return String.valueOf(c).getBytes("GBK").length>1;//汉字的...
  • //获取字符串长度2、str.indexOf(String s);//查找字符在字符串中的位置,该方法用于返回参数字符串s在指定字符串中首次出现的索引位置,当调用字符串的indexOf()方法时,会从当前 的字符串的开始位置搜索s的位置;...
  • 按照字节长度获取字符串长度
  • package Code503;public class CodeStringGet { public static void main(String[] args) { //获取字符串长度 int length = "huanduchenyu".length(); System.out.println("字符串的长度为:"+length); ...
  • /*** 获取字符串长度,如果有中文,则每个中文字符计为2位* @param value 指定的字符串* @return 字符串的长度*/public static int length(String value) {int valueLength = 0;String chinese = "[\u0391-\uFFE5]...
  • //获取字符串长度2、str.indexOf(String s);//查找字符在字符串中的位置,该方法用于返回参数字符串s在指定字符串中首次出现的索引位置,当调用字符串的indexOf()方法时,会从当前的字符串的开始位置搜索s的位置;...
  • Java获取字符串长度(length())

    万次阅读 2019-05-11 01:15:32
    Java中,要获取字符串长度,可以使用 String 类的 length() 方法,其语法形式如下: 字符串名.length(); 例:在学生信息管理系统中对管理员密码有这样的规定,即密码长度必须大于 6 位且小于 12 位。因为密码...
  • String 类的 length 方法返回此 String 对象的长度。也就是说,它等于字符串中包含的 ...输出:2可以使用 charAt 和 length 方法遍历字符串中的字符:String str = "Java is fun";for(int i = 0 ; i < str.lengt...
  • // 原字符串长度 — 去除空格后的长度 = 字符串前 空格长度 int length = str.length() - (temp.substring(0, (temp.length() - 1)).length()); if (length > 0) { str = temp.substring(0, (temp..
  • //话不多说,上代码 ... public class StrPrefixSuffixTest { public static void main(String[] args) { // TODO Auto-generated method stub ... System.out.println("该数字字符串长度为3的前缀...
  • ![图片说明](https://img-ask.csdn.net/upload/201603/18/1458300774_367590.png)
  • // 去除字符串前后空格?? ?Trim : function(sSubStr){?? ??? ?var lsStr = '';?? ??? ?var StrTrim = document.getElementById(sSubStr);?? ??? ??? ?if(StrTrim!= null){?????????? // lsStr = StrTrim....
  • java获取字符串的字节长度

    千次阅读 2018-06-28 09:08:00
    1 public static int getLength(String s) { 2 int length = 0; 3 for (int i = 0; i < s.length(); i++) { 4 int ascii = Character.codePointAt(s, i); 5 if (ascii >= ...
  • java获取含有中文字符串长度

    万次阅读 2018-06-28 10:16:59
    为方便合同用,我们写一个Utils类;... * 获取字符串长度,如果有中文,则每个中文字符计为2位 * @param value 指定的字符串 * @return 字符串的长度 */ public static int length(String value) { ...
  • java 获取字符串安全截取长度

    千次阅读 2015-10-16 17:46:20
    import java.util.ArrayList; import java.util.Collections; import java.util.List; public class SafeSub { public static void main(String[] args) { String html="test来自东方你好java"; List not_...
  • Java获取字符串信息

    2019-06-26 17:45:13
    字符串作为对象,可以通过相应的方法获取字符串的有效信息,如获取某个字符串的长度、某个索引位置的字符等。 1.获取子字符串 通过String类的substring()方法可以对字符串进行截取。这些方法的共同点就是利用字符串...
  • [Java教程]限制字符串长度02016-05-23 09:00:28在开发web页面时,表单内字符串过长而超出规定长度会导致一些不必...下面是限制字符串长度的解决方案:1,通过使用JavaScript原生的获取属性的方法:#id.getAttribute...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,832
精华内容 732
关键字:

java获取字符串长度

java 订阅