2-Java基本数据类型和运算符
目录
Java基本类型
Java数据类型转换
Java运算符
1、Java基本类型

1.1、boolean布尔
- 只有true和false两种值,在内存中占1bits(位),默认是false
1.2、byte/short/int/long整数类型
|
类型 |
占用空间(字节) |
占用空间(位) |
范围 |
| byte | 1 | 8 | -(2^7)~(2^7)-1(-128~127)超出则翻转 |
| short | 2 | 16 | -(2^15)~(2^15)-1(-32768~32767) |
| int | 3 | 32 | -(2^31)~(2^31)-1(约正负21亿) |
| long(前缀L或l) | 4 | 64 | -(2^63)~(2^63)-1(正负19位数) |
1.3、float/double浮点数类型
| 类型 | 占用空间(字节) | 范围 |
| float(后缀f或F) | 4 | -3.403E38~3.403E38 |
| double(后缀d或D,可省略) | 8 | -1.798E308~1.798E308 |
- java浮点类型有两种表达形式
十进制数形式:3.14、314.0、0.314
科学计数法形式:314e2、314E2、314E-2
- float和double都不能表示很精确的数字,所以不要使用浮点数进行比较
1.23f == 1.229999999f//true
4.56 == 4.559999999999999999d//true
1.4、char字符
- char是一个单一的16位的Unicode字符,以\u开头,和4个16位数字组合而成
- 最小值是\u0000,即为0,最大值是\uffff,即为65535
- char可以存储任何字符
- Java允许使用转义字符\来将其后的字符转变为其他含义
| 转义符 | 含义 | Unicode字符 |
| \n | 换行 | \u000a |
| \b | 退格(backspace) | \u0008 |
| \r | 回车 | \u000d |
| \t | 制表符tab | \u0009 |
| \” | 双引号” | \u0022 |
| \’ | 单引号’ | \u0027 |
| \\ | 反斜杠\(注意1个反斜杠表示转义) | \u005c |
2、Java数据类型转换
2.1、自动类型转换
- 自动类型转换又叫隐式类型转换,必须满足两个条件:
第一是两种数据类型彼此兼容
第二是目标类型的取值范围必须大于原类型的取值范围

2.2、强制类型转换
- 通过(type)var来讲值var转化成括号中指定的数据类型
- 强制类型转换可能造成精度降低或者值溢出
int x = 300;
byte bx = (byte)x; //值为44
强制类型转换注意:
操作较大的数时,要留意是否溢出,尤其是整数操作时
3.1、算数运算符
- 双目:加+、减-、乘*、除/、余%
- 单目:自增++、自减--
3.2、赋值运算符
赋值:a = 3
a += 3 ---> a = a + 3
a –= 3 ---> a = a – 3
a *= 3 ---> a = a * 3
a /= 3 ---> a = a / 3
a %= 3 ---> a = a % 3
3.3、逻辑运算符
短路或&&------------------a和b全为true时结果为true,当a为false时结果直接为false不计算b(节省时间)
短路且||-------------------a和b全为false时结果为false,当a为true时结果直接为true不计算b(节省时间)
逻辑非!--------------------!true == false,!fasle == true
逻辑或&-------------------a和b全为true时结果为true,无论a的计算结果如何,都要计算b
逻辑且|-------------------a和b全为false时结果为false,无论a的计算结果如何,都要计算b
3.4、位运算符
- 只针对整型byte、short、int、long进行运算
- 按位与&:同位对比,只有两位都为1时,结果才为1
- 按位或|:同位对比,两位中其中1位为1时,结果就为1
- 按位异或~:同位对比,两位不同时,结果为1;两位相同时,结果为0
- 按位取反^:将每一位都取反,得到结果(单目运算)
- 左移<<:a << 2表示,将a转为二进制,将所有二进位全部左移2位
- 右移>>:a >> 2表示,将a转为二进制,将所有二进位全部右移2位
2.5、关系运算符
大于>、小于<、等于==、大于等于>=、小于等于<=、不等于!=
3.6、运算符优先级
- 括号的优先级最高
- 单目运算优先级大于多目运算
- 算数运算符*/大于+-
- 算数运算符优先级 > 关系运算符 > 逻辑运算符
2-Java基本数据类型和运算符的更多相关文章
- JAVA基础--数据类型和运算符总结
一,JAVA的数据类型 逻辑型----boolean 只允许取值true和false 字符型----char java采用unicode编码(utf16),每个字符占用两个字节 整数型----byte ...
- 对Java的数据类型和运算符的理解
我知道千里之行始于足下,包含着对编程的兴趣,希望能够在这个平台上记录下我学习过程中的点点滴滴! Java的基本构造 标识符和关键字 标识符规则 标识符就是用于给程序中变量,类.方法命名的符号 1.标识 ...
- java基本数据类型和运算符
一.基本数据类型 种类: 内置数据类型 引用数据类型 1.内置数据类型 一共有八种基本类型,六个数字类型(四个整数类型,两个浮点型),一个布尔型,一个字符类型. (1)byte: byte数据类型是8 ...
- Java基础 - 数据类型和运算符
Java 语言支持的类型分为两类:基本数据类型(Primitive Type)和引用类型(Reference Type). 目录 基本数据类型 数值类型 整数类型 byte short int lon ...
- Java 第二章 变量、数据类型和运算符
第二章 变量.数据类型和运算符 什么是变量: 变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样. #在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据. ...
- Java中的变量,数据类型和运算符
变量,数据类型和运算符 1.变量是一个数据存储空间的表示,它是储存数据的基本单元. 如何理解这句话,下面用一个表格可以形象的表达: 变量与房间之间的对应关系 房间名称 变量名 房间类型 变量类型 入住 ...
- Java1变量数据类型和运算符
day02_变量数据类型和运算符 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class jh_01_数据类型说明 { public ...
- IOS开发新手教程(一)-数据类型和运算符
OC语法入门(一) 数据类型和运算符 1.1凝视 凝视和其它语言一样,同意单行 ,多行凝视,一份规范的代码里面须要有一些正式的凝视,例如以下凝视: /* 这是多行 凝视 */ //这是多行凝视 OC语 ...
- PostgreSQL自学笔记:5 数据类型和运算符
5 数据类型和运算符 5.1 PostgreSQL 数据类型介绍 5.1.1 整数类型 整型类型 字节 取值范围 smallint 2字节 -2^15 ~ 2^15 int integer 4字节 - ...
- 使用 JavaScript 中的变量、数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算符的不同位置得到不同的结果
查看本章节 查看作业目录 需求说明: 使用 JavaScript 中的变量.数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算 ...
随机推荐
- uniGUI之uniColorButton(21)
uniColorButton相当于VCL的ColorDialog1 若Palette 为空,则为系统自带颜色.
- super与this无法用在static方法中
更新记录 [1]2020.02.08-10:32 1.主要编辑了super 正文 我原本是在学习\(super\)关键字,后来突发奇想,能不能在父类中用\(super\)间接调用本类方法呢? 也就是说 ...
- 144、Java链表之定义一个Node类并输出
01.代码如下: package TIANPAN; class Node { // 每一个链表实际上就是由多个节点组成的 private String data; // 要保存的数据 private ...
- 【剑指Offer面试编程题】题目1388:跳台阶--九度OJ
题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 输入: 输入可能包含多个测试样例,对于每个测试案例, 输入包括一个整数n(1<=n< ...
- Metric类型
Metric类型 在上一小节中我们带领读者了解了Prometheus的底层数据模型,在Prometheus的存储实现上所有的监控样本都是以time-series的形式保存在Prometheus内存的T ...
- Adroid ViewPage+GridView实现每页6个元素,三页滑动切换
//}//public class MainActivity extends Activity {// private static final float APP_PAGE_SIZE = 16.0f ...
- MyISAM/Innodb的区别
MyISAM是MySQL的默认数据库引擎(5.5版之前).虽然性能极佳,而且提供了大量的特性,包括全文索引.压缩.空间函数等,但MyISAM不支持事务和行级锁,而且最大的缺陷就是崩溃后无法安全恢复.不 ...
- tomcat项目已存在错误
Could not publish server configuration for Apache Tomcat v8.0-1 at localhost.Multiple Contexts have ...
- 「SCOI2009」windy数
传送门 Luogu 解题思路 数位 \(\text{DP}\) 设状态 \(dp[now][las][0/1][0/1]\) 表示当前 \(\text{DP}\) 到第 \(i\) 位,前一个数是 \ ...
- jenkins -- 安装、任务构建
一.jenkins是什么? Jenkins是一个开源的.提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续.自动的构建/测试软件项目.监控外部任务的运行( ...