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 类型处于运算 ...
随机推荐
- redis之string数据类型常用方法总结
目录 redis 字符串(string)[需要掌握] 特点 语法 redis 字符串(string)[需要掌握] 特点 一个键能存储512MB数据 string类型是二进制安全的,可以存储任何数据,比 ...
- A Simple Problem with Integers-POJ3468 区间修改+区间查询
题意: 给你n个数和2个操作,C操作是将一个区间内的每个数都加上k,Q操作是询问一个区间的和 链接:http://poj.org/problem?id=3468 思路: 线段树区间修改+区间查询 代码 ...
- java并发初探ThreadPoolExecutor拒绝策略
java并发初探ThreadPoolExecutor拒绝策略 ThreadPoolExecuter构造器 corePoolSize是核心线程池,就是常驻线程池数量: maximumPoolSize是最 ...
- 第1节 kafka消息队列:11、kafka的数据不丢失机制,以及kafka-manager监控工具的使用;12、课程总结
12.kafka如何保证数据的不丢失 12.1生产者如何保证数据的不丢失 kafka的ack机制:在kafka发送数据的时候,每次发送消息都会有一个确认反馈机制,确保消息正常的能够被收到 如果是同步模 ...
- redis学习笔记-03:redis安装
一.redis的安装和配置 1.下载redis-5.0.4.tar.gz到/opt目录下,解压命令 :tar -zxvf redis-5.0.4.tar.gz,解压后出现redis-5.0.4的文件夹 ...
- R语言 使用rmarkdown写代码
1.如果是第一次新建markdown文件,需要在有网的条件下,因为要下载一个包才能用markdown 2.为什么使用rmarkdown 使用markdown不仅可以边调试边运行,还可以一次性将所调试好 ...
- 「JSOI2007」建筑抢修
传送门 Luogu 解题思路 显然先把所有楼按照报废时间递增排序. 然后考虑 \(1\cdots i-1\) 都能修完, \(i\) 修不完的情况. 显然我们在这 \(i\) 个里面至多只能修 \(i ...
- 083、Java数组之方法返回数组
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- Sweet Round 1题解
感谢各位参赛者,所有的题解如下: T1 syx的奖励 这题明显是签到题了吧,随便猜猜结论就A掉了 先说怎么做吧,把所有的可走的数gcd起来,然后再与n求gcd 如果为1,则输出n,若不为1,则输出-1 ...
- Python基础week2
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...