Java复习1-基本数据类型
数据类型
整形
| 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));
}
结果
Java复习1-基本数据类型的更多相关文章
- java复习面向对象(二)
java复习面向对象(二) 1.static关键字 举例图片 静态变量 使用static修饰的成员变量是静态变量 如果一个成员变量使用了关键字static,那么这个变量不属于对象自己,而属于所在的类多 ...
- 初识java之变量、数据类型和运算符(一)
博友目标: 1.掌握变量的概念 2.引子----会使用常用数据类型 众所周知,每台电脑都有一个内存这么个必不可少的元素,那么到底内存到底是用来干什么的呢?其实啊,计算机内存相当于人类的大脑,计算机在处 ...
- java 8种基本数据类型的默认值及所占字节数
通过一段代码来测试一下 8种基本数据类型的默认值 package dierge; public class Ceshi { int a; double b; boolean c; char d; fl ...
- java的五种数据类型解析
不知道大家对java的简单数据类型是否了解,下面针对Java的五种类型简单数据类型表示数字和字符,进行详细的讲解和分析. 一.简单数据类型初始化 在Java语言中,简单数据类型作为类的成员变量声明时自 ...
- Java中的基本数据类型
什么是基本数据类型 就是我们在编程的时候经常需要用到的数据类型,如整型,浮点型等,把这些数据类型专门拿出来特殊对待,并想象成所谓的“基本类型”. Java中有哪些基本数据类型
- JAVA中分为基本数据类型及引用数据类型
一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768 ...
- 二、java中的基本数据类型
总结: 1.java中的基本数据类型有byte.short.int.long;float.double;char;boolean. 2.基本数据类型与1相对应分别占1.2.4.8;4.8;2;1.(单 ...
- java 复习003 之排序篇
由java 复习003跳转过来的C语言实现版见some-sort-algorithms 快速排序(不稳定 O(n log n)) package vell.bibi.sort_algorithms; ...
- java 复习001
java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...
随机推荐
- 如何用dat批处理文件关闭某端口对应程序-Windows自动化命令
如何用dat批处理文件关闭某端口对应程序? 网上找到的大部分都是手动操作,第一步先查出端口,第二步在根据上一步查到的端口手动去关闭进程.但我的需求不是这样的,我需要全自动处理.用于 dubbo 服务进 ...
- OpenJ_POJ C16B Robot Game 打表找规律
Robot Game 题目连接: http://acm.hust.edu.cn/vjudge/contest/122701#problem/B Description Sgeoghy has addi ...
- nginx+uwsgi+flask 服务器配置
注:每个机器,软件版本可能不一样,虽然网上有很多类似的帖子,但是我在搭建的时候遇到了不少的坑,此文仅供参考. 请求流程: 1.安装uwsgi uwsgi是一个应用服务器,非静态文件的网络请求就必须通过 ...
- sql 计算两个经纬度点之间的距离
这里用到的算法和地球半径等数据均来自网络,此文只作整理记录. 地球半径值采用赤道半径 6378137.0米,这是1980年的国际标准数据. //存储过程 CREATE FUNCTION [f_GetD ...
- logstash高速入口
原文地址:http://logstash.net/docs/1.4.2/tutorials/getting-started-with-logstash 英语水平有限,假设有错误请各位指正 简单介绍 L ...
- Fiddler可以支持Websocket抓包了
今天试了一下,Fiddler已经可以支持客户端Websocket抓包了,并且查看的方式也非常方便. websocket作为一个标准的应用层的协议,在CS端程序用起来也比传统的tcp协议方便了,比较常见 ...
- LPC43xx SGPIO I2C Implementation
I²C SGPIO Configuration SGPIO is a hardware feature of LPC4300 series. There are 16 SGPIO pins calle ...
- Go 语言中的 new() 和 make()的区别
本文是看了文章之后的心得. 在此感谢. 概述 Go 语言中的 new 和 make 一直是新手比较容易混淆的东西,咋一看很相似.不过解释两者之间的不同也非常容易. 他们所做的事情,和应用的类型也不相同 ...
- 读写分离,读写分离死锁解决方案,事务发布死锁解决方案,发布订阅死锁解决方案|事务(进程 ID *)与另一个进程被死锁在 锁 资源上,并且已被选作死锁牺牲品。请重新运行该事务
前言: 由于网站访问压力的问题,综合分析各种因素后结合实际情况,采用数据库读写分离模式来解决当前问题.实际方案中采用“事务发布”模式实现主数据库和只读数据库的同步,其中: 发布服务器1 ...
- Lex与Yacc学习
http://www.cnblogs.com/shine-yr/p/5214976.html