在之前的slice中有提到到[]byte和string之间可以使用copy命令转换,那么string和[]byte还有什么其他方式可以转化?他们到底有什么区别?
一、string和[]byte对比
1.1、什么是string
根据标准库的builtin的解释
2024年10月12日
在之前的slice中有提到到[]byte和string之间可以使用copy命令转换,那么string和[]byte还有什么其他方式可以转化?他们到底有什么区别?
根据标准库的builtin的解释
2024年10月12日
当我上第一节计算机课的时候,我的电脑老师跟我说,一个英文字符是1个字节,一个中文是2个字节。这么多年来,我对此一直坚信不移,相信很多人也是这么觉得的,但是,真实情况下是这么一回事么?
要了解这个问题,我们首先得从字节说起,什么是字节呢?要知道,在计算中,底层都是晶体管的开关和关闭状态,我们把一个表示开关状态的称之为位,把八位称之为一个字节,也就是一个字节可以表示(00000000-11111111),也就是0到255。为什么是8位呢?因为字符实际上还不到128个,按道理7位就够了,一个说法是程序员也比较迷信,认为7是个不吉利的数字,另一种说法,8刚好是2^3的方,更容易计算机去理解。
2024年10月12日
字节流读取的时候,读到一个字节就返回一个字节。
字符流使用了字节流读到一个或多个字节时,先查找指定的编码表,将查到的字符返回。
字节流可以处理所有类型的数据,如图片,MP3等。
字符流只能处理字符数据。
字节流输入流都是以inputStream结尾,字节输出流都是以OutputStream结尾。
字符流输入流是以reader结尾,字符输出流以writer结尾。
2024年10月12日
字节流与字符流对比
字节流:
输入流 FileInputStream 用byte[]数组决定一次读多少
输出流 FileOutputStream FileterOutputStream 过滤器
“lllalhf’”.getBytes();//字符串变成字节数组
byte[] b数组变成字符串 new String(b);
read() //读到字节末尾返回-1
read( byte[]b ); //返回读多少数据
2024年10月12日
有人曾问fastjson的作者(阿里技术专家高铁):“你开发fastjson,没得到什么好处,反而挨了骂背了锅,这种事情你为什么要做呢?”
2024年10月12日
位(Bit):表示一个二进制数码0或1,是计算机存储处理信息的最基本 的单位。
字节(Byte):一个字节由8个位组成 。它表示作为一个完整处理单位的8个二进制数码。现目前计算机上多使用《美国国家信息交换标准代码》——ASCII编码(由美国国家标准委员会制定),如:
字符“A”的二进制编码是“0100 0001”即41H或65D
“#”的二进制编码是“0010 0011”即23H或35D
2024年10月12日
字符和字节的关系?
字符就是我们眼睛可以看到的并可以"分辨"出来一个一个"符号"。
字节是"系统存储的长度单位", 就是指"8个位(bit)", 这是人为规定的大小。
比如KB, 就是1024个字节; MB, 就是1024个KB; GB, 就是1024个MB;
2024年10月12日
前言
最近又复习了一下关于Java字节流与字符流的知识,有些总结记录一下
区别概述
在Java关于I/O读写的API中,字符流处理的单元为 两个字节的 Unicode 字符,分别操作字符、字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组。