服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - java中的char占几个字节实例分析

java中的char占几个字节实例分析

2020-09-05 11:56Java之家 Java教程

这篇文章主要介绍了java中的char占几个字节实例分析的相关资料,需要的朋友可以参考下

java中的char占几个字节实例分析

       1:“字节”是byte,“位”是bit ;

  2: 1 byte = 8 bit ;

  char 在Java中是2个字节。java采用unicode,2个字节(16位)来表示一个字符。

  例子代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class Test {
 
 
  public static void main(String[] args) {
    String str= "中";
    char x ='中';
    byte[] bytes=null;
    byte[] bytes1=null;
    try {
      bytes = str.getBytes("utf-8");
      bytes1 = charToByte(x);
    } catch (UnsupportedEncodingException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
    System.out.println("bytes 大小:"+bytes.length);
    System.out.println("bytes1大小:"+bytes1.length);
  }
  public static byte[] charToByte(char c) { 
    byte[] b = new byte[2]; 
    b[0] = (byte) ((c & 0xFF00) >> 8); 
    b[1] = (byte) (c & 0xFF); 
    return b; 
  }
}

运行结果:

bytes 大小:3
bytes1大小:2

  java是用unicode来表示字符,"中"这个中文字符的unicode就是2个字节。

 String.getBytes(encoding)方法是获取指定编码的byte数组表示,

通常gbk/gb2312是2个字节,utf-8是3个字节。

如果不指定encoding则取系统默认的encoding。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://blog.csdn.net/ocean20/article/details/6743385

延伸 · 阅读

精彩推荐