导航:首页 > 编程语言 > java字符串字节长度

java字符串字节长度

发布时间:2022-12-13 02:27:28

1. java中String接受的最大字符串的长度是多少

数组最大的长度为Integer.MAX_VALUE

2. Java中文字符所占的字节数是多少

采用GB2312或GBK编码方式时,一个中文字符占2个字节;而采用UTF-8编码方式时,一个中文字符会占3个字节。

3. Java中String接受的最大字符串的长度是多少

我们可以使用串接操作符得到一个长度更长的字符串,那么,string对象最多能容纳多少字符呢?查看string的源代码我们可以得知类string中
是使用域
count
来记录对象字符的数量,而count
的类型为
int,因此,我们可以推测最长的长度为
2^32,也就是4g。
不过,我们在编写源代码的时候,如果使用
sting
str
=
"aaaa";的形式定义一个字符串,那么双引号里面的ascii字符最多只能

65534
个。为什么呢?因为在class文件的规范中,
constant_utf8_info表中使用一个16位的无符号整数来记录字符串的长
度的,最多能表示
65536个字节,而java
class
文件是使用一种变体utf-8格式来存放字符的,null值使用两个字节来表示,因此只剩

65536-
2

65534个字节。也正是变体utf-8的原因,如果字符串中含有中文等非ascii字符,那么双引号中字符的数量会更少(一
个中文字符占用三个字节)。如果超出这个数量,在编译的时候编译器会报错

4. 计算java字符串的字节的长度

publicstaticvoidmain(String[]args)
{
Stringss="hel无此数lo";
byte[]buff=ss.getBytes();
intf=buff.length;
System.out.println(f);
}

可参阅http://blog.csdn.net/xiaoyu714543065/article/details/7380191

5. java中如何计算一个字符串的byte长度(一个汉字多少字符)

中文并不一定是占两个字节的,具体占多少字节是跟具体的编码方式相关的。
比如说:GB2312、GBK、GB18030
编码是占用两个字节的,但是
UTF-8
编码的话至少需要占用三个字节。
有一个简单方法,就是把大于
0xff
的字符都作为两个字符(当然是在
GBK
环境下)
Java
code
publicstaticint
count(String
str)
{
if(str
==null||
str.length
==0)
{
return0;
}
int
count
=0;
char[]
chs
=
str.toCharArray();
for(int
i
=0;
i
<
chs.length;
i++)
{
count
+=
(chs[i]
>0xff)
?2
:
1;
}
return
count;
}
或者你直接使用
int
len
=
str.getBytes("gbk");上面代码假设你的数据库编码格式是
GBK
的,而不是
UTF-8
的,如果是
UTF-8
的话,上面的代码无效!1字节等于8比特,一个字母是1字节,而一个汉字要用2个字节。一个汉字=2个字符

6. Java编程,求字符串的长度

  1. 首先打开my eclipse

    新建一个java项目,名字随意起

    名字起好后,点击完成

    右键点击项目名称,新建,类

    类的名字叫TextLength

    包的名字叫 com.zf.s2,点击完成
  2. 判断是否是汉字
public static int getChineseCount(String s) throws Exception{//获得汉字的长度char c;

    int chineseCount=0;

    if(!"".equals("")){//判断是否为空

    s=new String(s.getBytes(),"GBK"); //进行统一编码

    }

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

    c=s.charAt(i); //获得字符串中的每个字符

    if(isChineseChar(c)){//调用方法进行判断是否是汉字

    chineseCount++; //等同于chineseCount=chineseCount+1

    }

    }

    return chineseCount; //返回汉字个数

    }


    获得字母、数字、空格的个数

    public static String getStringInfo(String s){

    char ch;

    int character=0,blank=0,number=0;

    for(int i=0;i <s.length();i++) //for循环

    {

    ch=s.charAt(i);

    if((ch>='a'&&ch <='z')||(ch>='A'&&ch <='Z'))//统计字母

    character++; //等同于character=character+1

    else if(ch==' ') //统计空格

    blank++; //等同于blank=blank+1

    else if(ch>='0'&& ch <='9') //统计数字

    number++; //等同于number=number+1;

    }


    完整代码

    package com.zf.s2;//创建一个包


    public class TextLength {//描述字符串长度的类

    public static boolean isChineseChar(char c) throws Exception{//判断是否是一个汉字

    return String.valueOf(c).getBytes("GBK").length>1;//汉字的字节数大于1

    }

    public static int getChineseCount(String s) throws Exception{//获得汉字的长度

    char c;

    int chineseCount=0;

    if(!"".equals("")){//判断是否为空

    s=new String(s.getBytes(),"GBK"); //进行统一编码

    }

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

    c=s.charAt(i); //获得字符串中的每个字符

    if(isChineseChar(c)){//调用方法进行判断是否是汉字

    chineseCount++; //等同于chineseCount=chineseCount+1

    }

    }

    return chineseCount; //返回汉字个数

    }

    public static String getStringInfo(String s){//获得字母、数字、空格的个数

    char ch;

    int character=0,blank=0,number=0;

    for(int i=0;i <s.length();i++) //for循环

    {

    ch=s.charAt(i);

    if((ch>='a'&&ch <='z')||(ch>='A'&&ch <='Z'))//统计字母

    character++; //等同于character=character+1

    else if(ch==' ') //统计空格

    blank++; //等同于blank=blank+1

    else if(ch>='0'&& ch <='9') //统计数字

    number++; //等同于number=number+1;

    }


    return "字符串中共有"+character+"个字母,"+blank+"个空格,"+number+"个数字";

    }

    public static void main(String []args) throws Exception {//java程序的主入口方法

    String s="hello world 世界你好!!123*";

    System.out.println("字符串的总长度:"+s.length());//显示字符串长度

    System.out.println("字符串中汉字长度:"+getChineseCount(s)); //调用方法显示汉字长度

    System.out.println(getStringInfo(s)); //调用方法显示其它字母类型的长度

    }

    }


阅读全文

与java字符串字节长度相关的资料

热点内容
怎么批量有顺序的命名文件夹 浏览:209
杭州程序员健身 浏览:17
dvd光盘存储汉子算法 浏览:758
苹果邮件无法连接服务器地址 浏览:963
phpffmpeg转码 浏览:672
长沙好玩的解压项目 浏览:145
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:486
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:383
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:350
风翼app为什么进不去了 浏览:779
im4java压缩图片 浏览:362
数据查询网站源码 浏览:151