day2 编码与基本数据类型转换
编码方式
ASCII
1个字节表示字母,共128个字符。是大多数常用编码的基础,并被其兼容
Unicode
统一码,又称万国码,字母和汉字统一占用2个字节。常说的UNICODE编码是指UTF-16,UTF-16是Windows上默认的Unicode编码方式。常用的Word文档、标准化软件等都是使用Unicode编码,所以,操作系统、浏览器等默认也都支持UNICODE编码文档。上图中的UNICODE是定长双字节编码,UNICODE编码中除了英文部分,其它语种编码跟其它编码格式都不兼容
ANSI
1个字节表示字母,2个字节表示汉字。不能将不同语言内容存储在同一个ANSI编码文本中,无法用同一种ANSI编码来表示既有汉字、又有韩文的文本。
UTF-8
不定长编码。1个字节表示字母,3个字节表示汉字
GBK
1个字节表示字母,2个字节表示汉字
GB2312
同样可以表示汉字,GB2312<GBK
Big5
表示繁体中文,不支持简中
基本数据类型转换
自动转换
tips:
精度大的类型不会强制转换成精度小的类型。整型默认类型是int型,浮点型默认是double型。
在赋值时,若使用常量给byte赋值,由默认的高精度常量int给低精度byte/short赋值,先检验该常量是否在声明的类型的范围内,若在范围内,则能够通过(不会报精度丢失的错误),若超出所声明变量类型的范围,则抛出异常。(double常量给 float 变量赋值会报错)
byte a = 100; //√ short b = 100; //√ byte c = 200; //× float d = 12.8; //×
给a、b赋值的过程中,虽然常量100的默认类型是int型的,但是常量赋值先检验。
给d赋值过程中,常量12.8是默认的double型,会报存在精度可能会丢失的错误。在赋值时,若使用变量赋值,先检验两种类型的精度高低,高精度直接给低精度赋值会异常。
int foo = 200; byte bar = foo; //×
低精度给高精度赋值,将会进行自动转换。
byte foo =100; int bar =foo; //√
- char、byte、short三者间进行运算,先转换成int型再运算。
- boolean类型不会进行自动转换。
强制转换
String类型和基本类型转换
基本类型转String:+“”;
int a = 1; String b = a + "";
String转基本类型:
String s = "100"; int a = Integer.parseInt(s); double b = Double.parseDouble(s); long c = Long.parseLong(s); byte d = Byte.parseLong(s); short e = Short.parseShort(s); String s2="true"; boolean f = Boolean.parseBoolean(s2);
ps:转成char型使用 s.charAt(0);方法
参考地址:https://blog.sciencenet.cn/blog-3134052-1074221.html
day2 编码与基本数据类型转换相关推荐
- 基本数据类型转换 || 自动类型转换与强制类型转换
基本数据类型转换 自动类型转换 强制类型转换
- 29-30Python多线程、多线程、使用threading模块创建线程;JSON数据解析、编码为JSON类型转换对应表、Python类型转换对应表、json.dumps与json.loads
29Python3多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些 ...
- Java中的基本数据类型转换(自动、强制、提升)
转载自 Java中的基本数据类型转换(自动.强制.提升) 说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数 ...
- Java基本数据类型的自动转换_彻底理解Java中的基本数据类型转换(自动、强制、提升)...
说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间的转换关系. 自动类型转换 自 ...
- java 自动类型转换_彻底理解Java中的基本数据类型转换(自动、强制、提升)
说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间的转换关系. 自动类型转换 自 ...
- char强制类型转换为int_彻底理解Java中的基本数据类型转换(自动、强制、提升)...
说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 之前分享过<深入浅出 Java 中的包装类>,现在重新温故了下原 ...
- java自动类型提升_Java中的基本数据类型转换(自动、强制、提升)
说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间的转换关系. 自动类型转换 自 ...
- Java学习(4)—— 布尔类型、基本数据类型转换、基本数据类型和String类型的转换
布尔类型 也叫Boolean类型,boolean只允许取true和false. boolean占一个字节. 适用于逻辑运算,流程控制语句. 有默认类型,是false.但是应该声明为成员变量或是静态变量 ...
- Java 基本数据类型转换
Java 基本数据类型转换 目录 Java 基本数据类型转换 1.1自动类型转换 1.2 强制类型转换 在赋值运算或算术运算时,要求数据类型相同,否则就要进行类型转换. 转换的方式: 自动类型转换( ...
最新文章
- python中get和set使用_Python对象属性的set和get方法
- selenium 定制启动 chrome 的选项
- mysql脚本mysql_safe解释、mysql.sock文件、mysql_install_db
- 我是怎么通过技术白手起家创业的。
- 3D数学读书笔记——3D中的方位与角位移
- UVA - 227 Puzzle
- 优酷宠爱剧场发布新片单 包括近30部待播精品剧
- MySQL数据库基础(简介、操作规范、基本指令)
- matlab模块里有s,求助!!S-Function做通用模块
- EasyUI的databox取值
- jsf如何与数据库连接_JSF数据库示例– MySQL JDBC
- daemon守护进程初识
- go语言导出oracle数据,Go语言导出内容到Excel的方法
- iTerm2使用zmodem协议上传下载文件
- 数据结构设计题大题总结(非代码)
- android 获取图片信息 之 ExifInterface
- 利用SUS实现自动补丁管理
- 嵌入式开发笔记——调试组件SEGGER_RTT
- 反相器,传输门,电平移位
- SQL 02 基础查询与排序