java基础之数据类型(变量)

java中存在的数据有常量和变量

常量:在程序执行的过程中其值不可以发生改变

常量的分类

字面值常量

字面值常量的分类

常量

描述

字符串常量

用双引号括起来的内容

整数常量

所有整数

小数常量

所有小数

字符常量

用单引号括起来的内容,里面只能放单个数字,单个字母或单个符号

布尔常量

较为特殊,只有true和false

空常量

null(数组部分)

自定义常量

变量:在程序执行的过程中,在某个范围内其值可以发生改变的量

定义格式:

数据类型 变量名 = 变量值;

定义变量原因:

用来不断的存放同一类型的常量,并可以重复使用

java的数据类型

有数据类型原因:Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间

Java中数据类型的分类

基本数据类型

引用数据类型

基本数据类型分类(4类8种)

整数型

数据类型

所占字节

范围

byte

占一个字节

-128到127

short

占两个字

-215~215-1

int

占四个字节

-231~231-1

long

占八个字节

-263~263-1

浮点型

|数据类型|所占字节|范围

|-------|--------|

|float| 占两个字节| -3.403E38~3.403E38

|double| 占四个字节 |-1.798E308~1.798E308|舍入误差,精确运算时不用

字符型

|数据类型|所占字节|范围

|-------|--------|

|char |占两个字节| 0~65535

布尔型

**boolean **

小细节:boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小

数据类型间的转换

自动:小到大

强制:大到小

Java中的默认转换规则

自动

取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算

强转

如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同

数据类型的取值范围

进行混合运算的时候,byte,short,char不会相互转换,都会自动类型提升为int类型,其他类型进行混合运算的是小的数据类型提升为大的

byte

注意:float表示的数据范围比long的范围要大

原因

long:2^63-1

float:3.410^38 210^38 28^38 = 22338 = 2*2^114 2^63-1

运算符

运算符:就是对常量和变量进行操作的符号。

分类:

算术运算符

赋值运算符

比较(关系或条件)运算符

逻辑运算符

位运算符

三目(元)运算符

1)算数运算符

算术运算符:+-*/%,++,--

++/--:自增1/自减1

1.1)单独使用时,在前在后无差别

1.2)若被使用时,在前在后有差别

1.2.1)++在后,先使用,后自增1

1.2.2)++在前,先自增1,后使用

单独使用:

放在操作数的前面和后面效果一样。

参与运算使用:

放在操作数的前面,先自增或者自减,然后再参与运算。

放在操作数的后面,先参与运算,再自增或者自减。

注意事项:

"+"号在java中有三种作用,代表正号,做加法运算,字符串的连接符

整数相除只能得到整数。如果想得到小数,必须把数据变化为浮点数类型

/获取的是除法操作的商,%获取的是除法操作的余数

%运算符

当左边的绝对值小于右边绝对值时,结果是左边

当左边的绝对值等于右边或是右边的倍数时,结果是0

当左边的绝对值大于右边绝对值时,结果是余数

%运算符结果的符号只和左边有关系,与右边无关

任何一个正整数%2结果不是0就是1可以用来当作切换条件

2)关系运算符:

2.1)>(大于),

>=(大于或等于),<=(小于或等于)

==(等于),!=(不等于)

2.2)关系运算的结果为boolean型,

关系成立则为true,关系不成立则为false

3)逻辑运算符:

3.1)&&:短路与,两边都为真则为真,见false则false

若左边的数为false,则发生短路(右边不走了)

||:逻辑或,有一边为真则为真,见true则true

若左边的数为true,则发生短路(右边不走了)

!: 逻辑非,非真则假,非假则真

3.2)逻辑运算都是建立在关系运算基础之上的

逻辑运算的结果为boolean型

4)赋值运算符

4.1)简单赋值:=

扩展赋值:+=,-=,*=,/=,%=

4.2)建议使用扩展赋值,因其效率高

5)字符串连接运算符

5.1)+:

+号两边若为数字,则做加法运算

+号两边任有一边为字符串,则做字符串拼接

6)条件/三目运算符:

6.1)格式

boolean ? 数1 : 数2

6.2)计算boolean的值:

若为true,则整个表达式的结果为数1

若为false,则整个表达式的结果为数2

java 运算符适用类型_java基础(数据类型,运算符)相关推荐

  1. java c 基本类型_java 基本数据类型

    java的8种基本数据类型: 类型:bye short int long float double char boolean 字节数:1    2     4   8     4         8  ...

  2. java 运行时类型_Java基础之RTTI 运行时类型识别

    运行时类型识别(RTTI, Run-Time Type Identification)是Java中非常有用的机制,在Java运行时,RTTI维护类的相关信息. 多态(polymorphism)是基于R ...

  3. java 数据库 异常类型_Java基础 -- 常见异常

    1.常见异常 Exception 类是 Throwable 类的子类.除了Exception类外,Throwable还有一个子类Error . 异常类有两个主要子类:IOException和Runti ...

  4. java 全局变量 命名规则_Java 基础 运算符 命名规则 变量 循环

    1.程序: 一组指示计算机执行行动或坐车判断的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上. 2.软件 与计算机操作系统有关的计算机程序,规程.规则,以及可能有的文件,文档及数据 3.软 ...

  5. java 基本类型共享_Java基础数据类型

    第一类:逻辑型boolean boolean类型数据只允许取true或false,不可以0或非0的整数替代true和false,这点和C语言不同 第二类:文本型char char 型数据用来表示通常意 ...

  6. java取模运算_Java的四则运算符与取模运算符

    各位小伙伴们大家好,这次小编要介绍的是Java的四则运算符与取模运算符.这里,小编要提一下一些常见的运算符:算术运算符,赋值运算符,比较运算符,逻辑运算符,三元运算符.这次就先来讲算术运算符与取模运算 ...

  7. java 异或 排序_Java的位运算符详解实例——与()、非(~)、或(|)、异或(^)...

    位运算符主要针对二进制,它包括了:"与"."非"."或"."异或".从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两 ...

  8. java 数字1类型_java-1.基础与数据类型

    第三节数据类型 1.Java程序基本结构 package Mr;定义了 Java程序中类所在的包是Mr,其中Mr是一个标识符 public class Example是创建类的语句,其中public是 ...

  9. java运算符面试题_Java基本类型和运算符(面试题)

    1.Java中的基本类型有哪些?String 是最基本的数据类型吗? 基本数据类型:byte,short,char,int,long,float,double,boolean 一共8种.String不 ...

  10. java调用自己写的类型_Java基础——自定义类的使用

    自定义类 我们可以把类分为两种: 1.一种是java中已经定义好的类,如之前用过的Scanner类.Random类,这些我们直接拿过来用就可以了. 2.另一种是需要我们自己去定义的类,我们可以在类中定 ...

最新文章

  1. 顶会论文9篇,又斩获百度奖学金!哈工大NLP“新生代”正崭露头角
  2. oracle 关于日期格式转换与使用
  3. Linux 脚本编写基础(二)
  4. 树,森林与二叉树之间的转换
  5. oracle命令报01034,ORA-01034错误的解决办法-数据库专栏,ORACLE
  6. aop拦截mybatis执行sql_Java进阶架构之开源框架面试题系列:Spring+SpringMVC+MyBatis
  7. xml节点的添加和删除
  8. Linux命令工作中常用的总结
  9. 前端学习(1704):前端系列javascript之问题解答2和总结
  10. 亚马逊AI又遭抗议:一个好端端的美国官员,怎么就成罪犯了?
  11. android nfc开发_意法半导体NFC产品线完整 满足多元应用_企业动态_新闻中心
  12. Linux内核设计与实现 Robert Love
  13. 电容笔做的比较好的品牌有哪些?便宜好用的电容笔推荐
  14. 半路接手项目有多难?教你做个接盘侠高手!
  15. mysql计算年休假天数_如何计算年假多少天
  16. webpack (九) -热更新——浏览器不刷新,更新打包后的结果
  17. 究竟什么是CLR(翻译自维基百科)
  18. video-player [ 视频播放插件 ]
  19. Heritrix Eclipse下环境配置
  20. PreparedStatement和Statement的区别

热门文章

  1. Atitit webserver web服务器的艺术 目录 1.1. 2.2 使用处理器处理请求 1 2. 2.5 处理器的作用域 : 2 2.1. 在Jetty中,很多标准的服务器会继承Handl
  2. Atitit 提现功能安全条例 目录 1. 防余额篡改 1 2. 大额 频繁交易预警系统 1 3. 增加审核 流程 1 4. 增加审计 1 5. 财务出款核对 1 6. Other 2 6.1. 数
  3. Atitit 可读性技术与实践范例 艾提拉著 目录 1. 提升可读性的技术类 2 1.1. 本地化命名封装 2 1.2. 表格映射表代替选择 2 1.3. 1.2. Dsl 提升抽象到dsl级别 2
  4. Atitit 常用加密算法 aes des rsa 比较 历史演进 目录 1.1. 常规加密算法如下 Aes 3des des rsa 1 2. 加密算法历史演进 按照出现时间和加密强度 流行
  5. Atitit mybatis 配置 redis 集成 attilax总结 艾提拉总结 1.1. setting name=cacheEnabled v 1 1.2. Mapper文件 1 1.
  6. atitit.系统托盘图标的设计java swing c# .net c++ js
  7. atitit.提升兼容性最佳实践 o9o
  8. AJAX在IE下的调试
  9. 应用程序中主键ID生成与UUID
  10. 【优化求解】基于matlab改进的粒子群算法求解混合储能系统容量优化问题【含Matlab源码 1823期】