首 先,java中的一个char是2个字节。java采用unicode,2个字节来表示一个字符,这点与C语言中不同,C语言中采用ASCII,在大多数 系统中,一个char通常占1个字节,但是在0~127整数之间的字符映射,unicode向下兼容ASCII。而Java采用unicode来表示字符,一个中文或英文字符的unicode编码都占2个字节,但如果采用其他编码方式,一个字符占用的字节数则各不相同。

在 GB 2312 编码或 GBK 编码中,一个英文字母字符存储需要1个字节,一个汉字字符存储需要2个字节。 在UTF-8编码中,一个英文字母字符存储需要1个字节,一个汉字字符储存需要3到4个字节。在UTF-16编码中,一个英文字母字符存储需要2个字节,一个汉字字符储存需要3到4个字节(Unicode扩展区的一些汉字存储需要4个字节)。在UTF-32编码中,世界上任何字符的存储都需要4个字节。

1、我的系统的默认编码方式为GBK,因此对于字符串 “你好hello”,

如果调用length()方法返回其长度,得到的结果将为:7。该方法返回的是字符串的字符数,无论是中文字符还是英文字符,都被看做是一个字符。

如果将其转换为byte数组,而后返回byte数组的长度,得到的结果将为:9。因为在GBK编码中,中文占2个字节,而英文字符占1个字节。

执行如下代码,将得到如下图所示的输出:

输出结果如下图:

2、将编码方式为改为utf-8,即执行如下代码:

对于字符串 “你好hello”,得到的输出结果如下:

此时得到的的byte数组的长度为:11。因为在utf-8编码中,该中文字符占了3个字节,英文字符占1个字节。

3、如果将编码方式改为:utf-16,输出结果如下:

此时得到的的byte数组的长度为:16。因为在utf-16编码中,该中文字符占了3个字节,英文字符占2个字节。

3、如果将编码方式改为:utf-32,输出结果如下:

此时得到的的byte数组的长度为:28。因为在utf-32编码中,所有的字符均占4个字节。

python不同编码方式对应所占字节数

不同编码方式对应所占字节数 ASCII码中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间.一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制. ...

java基础---->java中字符编码问题(一)

这里面对java中的字符编码做一个总结,毕竟在项目中会经常遇到这个问题.爱不爱都可以,我怎样都依你,连借口我都帮你寻. 文件的编码格式 一.关于中文的二进制字节问题 public static Str ...

JS计算字符串所占字节数

最近项目有个需求要用js计算一串字符串写入到localStorage里所占的内存,众所周知的,js是使用Unicode编码的.而Unicode的实现有N种,其中用的最多的就是UTF-8和UTF-16. ...

Javascript 计算字符串所占字节数

最近项目有个需求要用js计算一串字符串写入到localStorage里所占的内存,众所周知的,js是使用Unicode编码的.而Unicode的实现有N种,其中用的最多的就是UTF-8和UTF-16. ...

【javascript基础】JS计算字符串所占字节数

废话不说,直接正题吧. 最近项目有个需求要用js计算一串字符串写入到localStorage里所占的内存,众所周知的,js是使用Unicode编码的.而Unicode的实现有N种,其中用的最多的就是U ...

java中字符数组与字符串之间互相转换的方法

public static void main(String[] args) { //1.字符数组 转换成 字符串 //(1)直接在构造String时转换 char[] array = new cha ...

Java不同编码方式,中英文字符所占字节数

测试代码 public class Test { public static void main(String[] args){ String[] charsetNames={ "UTF-8 ...

Java中各种集合(字符串类)的线程安全性!!!

Java中各种集合(字符串类)的线程安全性!!! 一.概念: 线程安全:就是当多线程访问时,采用了加锁的机制:即当一个线程访问该类的某个数据时,会对这个数据进行保护,其他线程不能对其访问,直到该线程读 ...

java中8种数据类型和默认值所占字节数

java 8种基本数据类型的默认值及所占字节数 通过一段代码来测试一下 8种基本数据类型的默认值 1 package dierge; 2 3 public class Ceshi { 4 int a; ...

随机推荐

Dashborad 上显示出错

Dashboard 上显示的错误是因为没有选择对应的X-坐标. 上周处理过 一个字段,它是一个Formula 字段,作为Dashboard的 Data Source 前提是报表是得Group by 一 ...

Mad Lib程序

单选框  复选框  按钮  标签  文本框的应用 #coding=utf-8 __author__ = 'minmin' from Tkinter import * class Application ...

go语言学习-常用命令(四)

go常用命令 go get:获取远程包(得装git) go run:直接运行程序(写代码时调试用) go build:测试编译,检查是否有编译错误 go fmt:格式化代码(一般不咋用,IDE都自带了 ...

JS 正则表达式基本语法(精粹)

1.正则表达式基本语法 两个特殊的符号'^'和'$'.他们的作用是分别指出一个字符串的开始和结束. 例子如下: "^The":表示所有以"The"开始的字符串( ...

转:SQL 关于apply的两种形式cross apply 和 outer apply

c语言中大写英文字母所占字节,Java中字符编码和字符串所占字节数 .相关推荐

  1. C语言-- 输出大写英文字母

    个人认为本题是课本上数组第三块这一部分较难的一题. 本题要求编写程序,顺序输出给定字符串中所出现过的大写英文字母,每个字母只输出一遍:若无大写英文字母则输出"Not Found". ...

  2. #Python3中检测字符串是否只由大写英文字母或者数字组成issupper()

    31.(str).issupper() 检测字符串是否只由大写英文字母或者数字组成. #如果字符传中至少有一个字符(长度大于1) 且所有的字符都是大写英文字母或者数字返回True,否则返回False. ...

  3. ch不是小写英文字母的c语言代码,函数fun的功能是进行字母转换。若形参ch中是小写英文字母,则转换成对应的大写英文字母;若ch中是大写英文字母,则...

    题目 题型:选答,填空 难度:★ 函数fun的功能是进行字母转换.若形参ch中是小写英文字母,则转换成对应的大写英文字母:若ch中是大写英文字母,则 函数fun的功能是进行字母转换.若形参ch中是小写 ...

  4. 7-65 字符串替换 (15 分) 本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 原字母 对应字母 A Z B Y C X D W … … X C Y B Z A

    7-65 字符串替换 (15 分) 本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 输入格式: 输入在一行中给出一个不超过80个字符.并以回车结束的字符串. 输出格式: 输出在一行 ...

  5. PTA-7-1 输出大写英文字母 (15分)(C语言)

    本题要求编写程序,顺序输出给定字符串中所出现过的大写英文字母,每个字母只输出一遍:若无大写英文字母则输出"Not Found". 输入格式: 输入为一个以回车结束的字符串(少于80 ...

  6. c语言 大写英文字母

    大写英文字母 请用程序实现 顺序输出给定字符串中所出现过的大写英文字母,每个字母只输出一遍:若无大写英文字母则输出Not Found. 输入格式 输入为一个以回车结束的字符串(少于80个字符). 输出 ...

  7. JAVA输出字符串中字母_Java输出字符串中的大写英文字母数,小写英文字母数以及非英文字母的三种方法...

    import java.util.*; /** * 3.编写一个程序,输出一个字符串中的大写英文字母数,小写英文字母数以及非英文字母. 提示: 方法一:使用循环提取字符,判断字符是否在A-Z .a-z ...

  8. C语言:实验7-3-5 输出大写英文字母.2021-08-05

    实验7-3-5 输出大写英文字母 (15 point(s)) 本题要求编写程序,顺序输出给定字符串中所出现过的大写英文字母,每个字母只输出一遍:若无大写英文字母则输出"Not Found&q ...

  9. 本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:

    本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 原字母 对应字母 A Z B Y C X D W - - X C Y B Z A 输入格式: 输入在一行中给出一个不超过80个字符. ...

最新文章

  1. windows8.1 windows defender service无法启动解决方案
  2. centos7编译安装php7.3
  3. 原生android 全面屏,谷歌全面屏手机曝光!谷歌pixel2,安卓8.0+骁龙836!
  4. Oracle优化笔记
  5. MakeItTalk:Adobe 语音驱动的头部动画
  6. php中高光显示的高数,[技术博客]React Native——HTML页面代码高亮数学公式解析...
  7. 机器学习之类别不平衡问题 (2) —— ROC和PR曲线
  8. Enterprise Library修改后dll的签名改变
  9. FreeSwitch中的会议功能
  10. 程式CMS V4黑色炫酷DJ音乐门户网站源码模板
  11. 关于word中最后一个分节符导致的空白页删除问题
  12. MySQL Binlog 解析工具 Maxwell 详解
  13. 厉害了,学霸利用贪心算法找偷车贼
  14. ZigBee网络数据传递流程_蓝牙、WIFI、Zigbee谁更适合物联网,各有哪些优缺点?...
  15. Arnold Denoise流程
  16. PDFBox加密和解密PDF文件
  17. jQuery炫酷3d背景视觉差特效
  18. 自动发邮件的程序 c语言,C语言实现发送邮件.md
  19. 驻留内存 虚拟内存 共享内存
  20. Java解压Zip文件 小结

热门文章

  1. u盘在ubuntu系统下突然变成只读文件
  2. ADSL PPPoE出错详解及宽带连接中的一些错误代码含义
  3. CapsuleNet论文笔记
  4. 写字楼价格大跌,摩天大楼面临危机
  5. STM32CUBEMX配置教程(一)基础配置
  6. 2021软件开发专业的前景怎么样?是否还热门!
  7. 移植好U8g2图形库的STM32F407标准库工程模板,0.96寸OLED驱动程序
  8. echarts gallery最新地址
  9. 判断一个链表是否为回文结构
  10. 硅芯思见:Timing Borrow深入浅出