Java 中 getBytes() 方法返回的数组中的内容在字符编码中代表什么意义?

请问 Java 中 getBytes() 方法返回的数组中的数字在字符编码中代表什么意义?

看了好多文章还是没搞懂字符编码是怎么做出来的,所以更不理解 getBytes()

返回的数组中的数字到底有什么含义?能不能有个大佬出来解释下这些东西?或者

推荐一些好点的资料,本人对计算机基础的知识很是缺乏。

子衿沉夜
浏览 731回答 5
5回答

慕斯709654

java内部一般都是使用utf8编码,你可以具体去查下utf8编码的格式。

牛魔王的故事

编码通信之间约定的一种规则,编码有很多种,比如:gbk、utf-8、gb2312等等,如果对方给你传输的格式是gbk,你接收的时候就用gbk的编码来进行解析,我目前的理解只能导这种程度,希望能帮到你

慕容3067478

你说的应该是string的getBytes()方法吧.先确定一件事,就是现在的计算机只认识0和1.为了存储信息,一个比较简单的方法就是把不同的0,1组合来代表自然语言中的不同字,最开始只有英语国家的搞计算机,所以有了ASCII码表,它用8位来表示一个字符(首位为0,那么就有2的7次方个组合方式,也就是说可以表示128个字符),于是他们也把8位称为一个字节(以为这能表示一个字符)。但是一堆的0,1组合在一起实在是太影响阅读了,于是就很机智弄出一个东西叫2进制,把这些排列组合当成是一个数字,二进制赋予了排列组合意义,也让这些排列组合可以转成十进制的数字。如果只有英文字符,getBytes()方法返回的就是ASCII码表中对应的10进制数字数组。但是世界上还是有很多不同语言,于是他们也有一套甚至多套二进制字节码对应自然语言字符的表,所以getBytes()可以传入一个参数Charset(字符集),表示你想把这个String转成什么编码格式的字节数组。

蛊毒传说

建议看看unicode和utf8的关系

开满天机

看了一些计算机基础的知识知识之后,我知道了byte数组的数字是什么意思了,其实里面的数字就是对应ASCII表中的数字,差不多就是坐标。一个字母是对应表中的一个字节,中文是用2-3个字节表示。byte数组中是转换成10进制后的结果。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java