Java数据类型和运算符
一,数据类型分类(2种)
1. 基本数据类型(3种)
数值型:
整数类型(4种):
- byte(1字节):范围(-128~127);
- short(2字节):范围(-32768~32767);
- int(4字节);
- long(8字节):若数据定义为long类型超过int范围后面 需加“L”(推荐)或“l”(默认为int,超过int范围编译将会报错,未超过则不会);
浮点类型(2种):
- float(4字节):第1位为符号位,接下来8位表示指数,再接下来23位表示尾数;若指定浮点类型为float需加“F”或“f”(默认为double,否则编译提示可能损失精度);
- double(8字节):第1位为符号位,接下来11位表示指数,再接下来52位表示尾数;
- 浮点数的形式:
- a.十进制数形式:必须包含一个小数点(1.68、168.0和 .168),否则当成int类型;
- b.科学计数法形式:只有浮点类型数值才可以使用,如1.68e2(168.0)、1.68E2和168e2(16800.0);
- 特殊浮点数:
- a.正无穷大:正数除于0.0,用Double或Float的POSITIVE_INFINITY表示,所有的正无穷大都相等;
- b.负无穷大:负数除于0.0,用Double或Float的NEGATIVE_INFINITY表示,所有的负无穷大都相等;
- c.非数:0.0/0.0,用Double或Float的NaN表示,所有的非数均不相等;
字符型:char(2字节)
布尔型:boolean(1字节)
注意: switch语句中只能接受byte、short、int和char 类型变量(JDK1.6以前的版本),JDK1.7时,又增加了String。
2. 引用数据类型
- 类(class)
- 接口(interface)
- 数组([ ])
- 算术运算符
- 赋值运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 三元运算符
运算符的优先级:
1,算数运算符() ++ -- > * / % + -
2,比较运算符(> < >= <=) > (== !=)
3,逻辑运算符! > & > ^ > |
4,赋值运算符=
算数运算符> 比较运算符(关系运算符) > 条件运算符 >赋值运算符
|
优先级
|
运算符
|
名称或含义
|
使用形式
|
结合方向
|
说明
|
|
1
|
后置++ |
后置自增运算符
|
变量名++
|
左到右
|
|
| 后置-- | 后置自减运算符 | 变量名-- | |||
|
[ ]
|
数组下标 |
数组名[整型表达式]
|
|||
|
( )
|
圆括号
|
(表达式)/函数名(形参表)
|
|||
|
.
|
成员选择(对象)
|
对象.成员名
|
|||
|
->
|
成员选择(指针)
|
对象指针->成员名
|
|||
|
2
|
-
|
负号运算符
|
-表达式
|
右到左
|
单目运算符
|
|
(类型)
|
强制类型转换
|
(数据类型)表达式
|
|||
|
前置++
|
前置自增运算符
|
++变量名
|
单目运算符
|
||
|
前置--
|
前置自减运算符
|
--变量名
|
单目运算符
|
||
|
*
|
取值运算符
|
*指针表达式
|
单目运算符
|
||
|
&
|
取地址运算符
|
&左值表达式
|
单目运算符
|
||
|
!
|
逻辑非运算符
|
!表达式
|
单目运算符
|
||
|
~
|
按位取反运算符
|
~表达式
|
单目运算符
|
||
|
sizeof
|
长度运算符
|
sizeof 表达式/sizeof(类型)
|
|||
|
3
|
/
|
除
|
表达式/表达式
|
左到右
|
双目运算符
|
|
*
|
乘
|
表达式*表达式
|
双目运算符
|
||
|
%
|
余数(取模)
|
整型表达式%整型表达式
|
双目运算符
|
||
|
4
|
+
|
加
|
表达式+表达式
|
左到右
|
双目运算符
|
|
-
|
减
|
表达式-表达式
|
双目运算符
|
||
|
5
|
<<
|
左移
|
表达式<<表达式
|
左到右
|
双目运算符
|
|
>>
|
右移
|
表达式>>表达式
|
双目运算符
|
||
|
6
|
>
|
大于
|
表达式>表达式
|
左到右
|
双目运算符
|
|
>=
|
大于等于
|
表达式>=表达式
|
双目运算符
|
||
|
<
|
小于
|
表达式<表达式
|
双目运算符
|
||
|
<=
|
小于等于
|
表达式<=表达式
|
双目运算符
|
||
|
7
|
==
|
等于
|
表达式==表达式
|
左到右
|
双目运算符
|
|
!=
|
不等于
|
表达式!= 表达式
|
双目运算符
|
||
|
8
|
&
|
按位与
|
整型表达式&整型表达式
|
左到右
|
双目运算符
|
|
9
|
^
|
按位异或
|
整型表达式^整型表达式
|
左到右
|
双目运算符
|
|
10
|
|
|
按位或
|
整型表达式|整型表达式
|
左到右
|
双目运算符
|
|
11
|
&&
|
逻辑与
|
表达式&&表达式
|
左到右
|
双目运算符
|
|
12
|
||
|
逻辑或
|
表达式||表达式
|
左到右
|
双目运算符
|
|
13
|
?:
|
条件运算符
|
表达式1? 表达式2: 表达式3
|
右到左
|
三目运算符
|
|
14
|
=
|
赋值运算符
|
变量=表达式
|
右到左
|
|
|
/=
|
除后赋值
|
变量/=表达式
|
|||
|
*=
|
乘后赋值
|
变量*=表达式
|
|||
|
%=
|
取模后赋值
|
变量%=表达式
|
|||
|
+=
|
加后赋值
|
变量+=表达式
|
|||
|
-=
|
减后赋值
|
变量-=表达式
|
|||
|
<<=
|
左移后赋值
|
变量<<=表达式
|
|||
|
>>=
|
右移后赋值
|
变量>>=表达式
|
|||
|
&=
|
按位与后赋值
|
变量&=表达式
|
|||
|
^=
|
按位异或后赋值
|
变量^=表达式
|
|||
|
|=
|
按位或后赋值
|
变量|=表达式
|
|||
|
15
|
,
|
逗号运算符
|
表达式,表达式,…
|
左到右
|
从左向右顺序运算
|
|
结合性
|
|
|---|---|
|
( ) [ ] -> . ++(后缀自增) --(后缀自减)
|
left to right
|
|
! ~ ++(前缀自增) --(前缀自减) + - * sizeof(type)
|
right to left
|
|
* / %
|
left
to
right
|
|
+ -
|
|
|
<< >>
|
|
|
< <= > >=
|
|
|
== !=
|
|
|
&
|
|
|
^
|
|
|
|
|
|
|
&&
|
|
|
||
|
|
|
? : (条件运算)
|
right to left
|
|
= += -= *= /= %= &= ^= |= <<= >>=
|
|
结合性
|
|
|---|---|
|
( ) [ ] -> . ++(后缀自增) --(后缀自减)
|
left to right
|
|
! ~ ++(前缀自增) --(前缀自减) + - * sizeof(type)
|
right to left
|
|
* / %
|
left
to
right
|
|
+ -
|
|
|
<< >>
|
|
|
< <= > >=
|
|
|
== !=
|
|
|
&
|
|
|
^
|
|
|
|
|
|
|
&&
|
|
|
||
|
|
|
? : (条件运算)
|
right to left
|
|
= += -= *= /= %= &= ^= |= <<= >>=
|
Java数据类型和运算符的更多相关文章
- java 数据类型和运算符
1.注释 单行注释: //哈哈哈 多行注释: /* 啦啦啦 */ 文档注释: /** */注释中包含一些说明性的文字及一些JavaDoc标签(后期写项目时,可以生成项目的API) ...
- java——数据类型和运算符
强类型语言 Java语言是一门强类型语言.强类型包含两方面的含义:①所有的变量必须先声明.后使用:②指定类型的变量只能接受类型与之匹配的值.强类型语言可以在编译过程中发现源代码的错误,从而保证程序更加 ...
- javaSE总结(一)-java数据类型和运算符
一.注释 (1)单行注释: // (2)多行注释:/* */ (3)文档注释:/** */ 二.标识符和关键字 (1)分隔符:分号; 花括号{} 方括号[] 圆括号() 空格 圆点(.) ...
- [02]java数据类型和运算符等知识
00 Java中的注释 为了方便程序的阅读,Java语言允许程序员在程序中写上一些说明性的文字,用来提高程序的可读性,这些文字性的说明就称为注释.注释不会出现在字节码文件中,即Java编译器编译时会跳 ...
- 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字节 - ...
随机推荐
- BZOJ-4424 &&CodeForces-19E Fairy DP+dfs (Link-Cut-Tree可A)
Va爷的胡策题T2 E. Fairy time limit per test1.5 seconds memory limit per test256 megabytes inputstandard i ...
- html中设置锚点定位的几种常见方法(#号定位)
在html中设置锚点定位我知道的有几种方法,在此和大家分享一下: 1.使用id定位: <a href="#1F">锚点1</a> <div id=&q ...
- (原)String类两种实例化的区别
String有两种实例化方式,一种是通过直接赋值的方式,另外一种是使用标准的new调用构造方法完成实例化. public class StringDemo { public static void m ...
- automapper初步
首先引入 automapper.dll using System; using System.Collections.Generic; using System.Linq; using System. ...
- footable动态载入数据
footable_redraw事件 $('#scan').on('click',function(){ var html = '<tr><td>mayidudu</td& ...
- hdu 1087 Super Jumping! Jumping! Jumping!(动态规划)
题意: 求解最大递增子序列. 例如:3 1 3 2 输入 3 个数 1 3 2 则递增子序列有 {1} {3} {2} {1 3} {1 2} ,故输出子序列的最大和 4 解题思路: x[n](n个 ...
- map vs hash_map
1. map, multimap, set, multiset g++ 中 map, multimap, set, multiset 由红黑树实现 map: bits/stl_map.h multim ...
- Redis介绍以及安装(Linux与windows)
1.liunux系统 redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的 不足,它支持存储的value类型 ...
- 不起眼却有大作用的 .NET功能集(转发)
http://www.cnblogs.com/powertoolsteam/p/top15features.html 目录 1. ObsoleteAttribute2. 设置默认值属性: Defaul ...
- fedora终端快捷键
在name框中填写这个快捷键的名称,比如open terminal(打开终端窗口) 在command框中填写执行这个快捷键的shell命令,此处可填写gnome-terminal