数据类型

整形

type 存储 取值范围
int 4字节 -2 147 483 648 ~ 2 147 483 647 (超过20亿)
short 2字节 -32 768 ~ 32 7677
long 8字节 -9 223 372 036 854 775 808 ~ 9 223 372 036 854 775 807
byte 1字节 -128 ~ 127

关于范围的计算,1字节=8位。 1byte 即8个1和0的组合范围。

需要记住int是4个字节,32位。

浮点类型

type 存储 范围
float 4字节 -2^128 ~ +2^127 有效位6~7位
double 8字节 -2^1024 ~ +2^1023 有效位 15位

double数值精度是float的两倍,绝大部分都应该采用double而不是float。

字符char

char用来表示单个字符,Java中采用16位来表示,即2个字节。但现在unicode字符长度已经超过了65536,一个char并不能完全覆盖所有的字符。所以,通常不要用char,而是string,否则会有乱码产生。

boolean

只有true或false。唯一需要注意的是Java中基本类型和包装类的关系。对于一个class的字段,可以是boolean类型的,也可以是Boolean类型的。二者是不一样的!boolean类型的字段在初始化的时候,如果没有指定则默认位false。而Boolean默认是null。所以,在class里的成员变量的布尔类型都应该采用Boolean。

String

Java对字符处理通常用的是String,但在概念上,String不是数据类型,而一个class。String由char的值序列组成。但前面已经提到char只有两个字节16位,不能够表示所有的unicode编码,有时候需要两个unicode才可表示。那么,String的length方法就很有意思了。

@Test
public void testCodePoint() {
String a = "\uD835\uDD46㋛Hello";
System.out.println(a);
System.out.println(a.length());
a.codePoints().forEach(value -> System.out.println((char) value));
}

结果

												

最新文章

  1. 网站设置404页面 --nginx
  2. php [] array的区别
  3. 常用的HTML5、CSS3新特性能力检测写法
  4. [bzoj 1064][NOI2008]假面舞会(dfs判断环)
  5. [FreeProxy]FreeProxy代理服务器端软件介绍 之 sock 5
  6. (转) 将VB.NET网站转换成C#的全过程
  7. Springmvc 配置json输出的几种方式
  8. Sass与Compass——回顾
  9. JS之代理模式
  10. 解决 Entity Framework 6.0 decimal 类型精度问题
  11. python day05 作业答案
  12. hihocoder1489 Legendary Items 概率期望
  13. 转-[WebServer] Windows操作系统下 Tomcat 服务器运行 PHP 的环境配置
  14. C++ Programming Language中的Calculator源代码
  15. Angular之替换根组件
  16. 决胜 Poker
  17. /.well-known/apple-app-site-association
  18. SpringMyBatisDay03
  19. redis的五种常见数据类型的常用指令
  20. SharePoint 改动passwordWeb Part部署方案

热门文章

  1. gdb 调试及优化
  2. [Java]类的生命周期(下)类的初始化[转]
  3. SNMP代理软件开发
  4. tesseract-ocr识别中文扫描图片实例讲解
  5. 使用 IntraWeb (19) - 基本控件之 TIWTreeView
  6. ADO.NET理论+实践
  7. ZServer4D开源项目
  8. WordPress主题开发:style.css主题信息标记
  9. SharePoint Online 创建网站集
  10. 嗜血法医第一二三季/Dexter全集迅雷下载