内容:
  (1)数据类型
  (2)运算符
  (3)分支结构

1.数据类型

  java语言中的基本数据类型:byte、short、int、long、float、double、boolean、char。

1.1布尔类型

  在java语言中描述真假信息的类型有:boolean。

  该类型变量的数值只有两种:true(真)、false(假)。

  该类型在内存空间中的大小没有明确定义,通常认为是1个字节。

1.2字符类型

  在java语言中用于描述单个字符的数据类型有:char  如:'a'、'b'。

  其中char类型在内存空间中占2个字节大小,并且没有符号,因此范围是65535。

  该类型在以后的开发中很少使用,使用更多的是由多个字符组成的字符串,在java语言中用Sting类型来描述。

  对于字符'a'这样的图案无法存储到计算机中,因为计算机的底层只能识别0和1组成的二进制序列,

  如果需要将'a'储存起来则需要给该图案指定一个编号,将编号记录到计算机中,这种编号就叫做ASCII。

  常用的ASCII有:

        'A' - 65  'a' - 97  '0' - 48  空格 - 32  换行符 - 10

  转义字符:

      \" 代表 "    \' 代表 '    \\ 代表 \     \n 代表 换行符    \t 代表 制表符

1.3 基本数据类型之间的转换

  在Java语言中基本数据类型之间的转换方式有两种:

      自动类型转换:从小类型到大类型之间的转换

      强制类型转换:从大类型到小类型之间的转换

        语法格式: 目标类型  变量名  = (目标类型)源类型变量名  (不建议使用强制类型转换,可能会有损失)

2.运算符
2.1 算术运算符

  + 表示加法运算符   - 表示减法运算符   * 表示乘法运算符

  / 表示除法运算符   % 表示取模/取余运算符

  注意:

    (1)在java语言中两个整数相除的结果只取整数部分,丢弃小数部分。

    (2)如果希望计算结果保留小数部分,则需要进行如下处理:

      (a)让其中一个操作数强制转换为double类型即可。

      (b)让其中一个操作数乘以1.0提升到double类型再运算即可。(推荐使用此方法)

    (3)在java中0不能做除数,但是0.0可以做除数,结果是无穷。

    (4)+既可以当做算数运算符,也可以作为字符串连接符,具体区分方式如下:

       当+两边的操作数中只要有一个是字符串类型时,则按照字符串连接符对待。

2.2 关系/比较运算符

  > 表示是否大于运算符 >    = 表示是否大于等于运算符    < 表示是否小于运算符

  <= 表示是否小于等于运算符   == 表示是否等于运算符         != 表示是否不等于运算符

  所有关系运算符作为最终运算的表达式结果一定是boolean类型。

2.3 自增减运算符

  + 表示加法运算符  ++表示自增运算符  让变量自身的数值加1,覆盖原来的数值。

  -  表示减法运算符  - -表示自减运算符  让变量自身的数值减1,覆盖原来的数值。

  注意:

    (a)对于单个变量来说,++放在变量名的前面或后面带来的结果都是让变量自身+1的效果。

    (b)对于表达式来说,   ++a 表示先让a自身的数值+1,然后再作为表达式的结果。

                   a++ 表示先让a作为表达式的结果,然后再让啊自身的数值+1。

                   - -a 表示先让a自身的数值-1,然后再作为表达式的结果。

                   a- - 表示先让a作为表达式的结果,然后再让啊自身的数值-1。

2.4 逻辑运算符

  && 表示逻辑与运算符,相当于并且,同真为真,一假为假。

  ||    表示逻辑或运算符,相当于或者,一真为真,同假为假。

  !  表示逻辑非运算符,相当于取反,真为假,假为真。

2.4.1  & 和 && 的区别

  &运算符有两种用法:(1)按位与;(2)逻辑与。

  &&运算符是短路与运算。逻辑与跟短路与的差别是非常巨大的,虽然二者都要求运算符左右两端的布尔值都是true 整个表达式的值才是 true。

  &&之所以称为短路运算是因为,如果&&左边的表达式的值是 false,右边的表达式会被直接短路掉,不会进行运算。

  很多时候我们可能都需要用&&而不是&,例如在验证用户登录时判定用户名不是 null 而且不是空字符串,应当写为 username != null &&!username.equals(""),二者的顺序不能交换,

  更不能用&运算符,因为第一个条件如果不成立,根本不能进行字符串的 equals 比较,否则会产生 NullPointerException 异常。

  注意:逻辑或运算符(|)和短路或运算符(||)的差别也是如此。

  短路特性:

      对于逻辑与来说,若第一个操作数的结果为假,则整个表达式的结果一定为假,此时跳过第二个操作数的判断。

      对于逻辑或来说,若第一个操作数的结果为真,则整个表达式的结果一定为真,此时跳过第二个操作数的判断。

2.5 三目/条件运算符

  条件表达式?表达式1:表达式2

    (判断条件表达式是否成立,若成立执行表达式1,否则执行表达式2)

java 基础 02 数据类型、运算符、分支结构的更多相关文章

  1. java基础-02数据类型

    基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...

  2. java基础02 数据类型转

    一.回答问题 float f1 = 6.66f; float f2 = (float) 6.67; f1==f2? /** * * @author sun * */ public class Demo ...

  3. java基础(数据类型,运算符)

    java基础之数据类型(变量) java中存在的数据有常量和变量 常量:在程序执行的过程中其值不可以发生改变 常量的分类 字面值常量 字面值常量的分类 常量 描述 字符串常量 用双引号括起来的内容 整 ...

  4. java基础-引用数据类型之一维数组(Array)

    java基础-引用数据类型之一维数组(Array) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组的定义 1>.为什么需要数组 保存一个数据可以定义一个变量,如果要保 ...

  5. Java基础-字符串连接运算符String link operator

    Java基础-字符串连接运算符String link operator 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 字符串链接运算符是通过“+”进行拼接的. 一.使用“+”进行字 ...

  6. Java基础语法(3)-运算符

    title: Java基础语法(3)-运算符 blog: CSDN data: Java学习路线及视频 1.算术运算符 算术运算符的注意问题 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1. ...

  7. java基础-引用数据类型之二维数组(Array)

    java基础-引用数据类型之二维数组(Array) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 之前我们学习过了Java的一维数组,所谓的二维数组就是元素是一堆一维数组的数组,换 ...

  8. Java基础-引用数据类型之集合(Collection)

    Java基础-引用数据类型之集合(Collection) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.为什么出现集合类 面向对象语言对事物的体现都是以对象的形式,所以为了方便 ...

  9. java 基础 03 运算符 分支结构 循环结构

    今天内容: (1)运算符 (2)分支结构 (3)循环结构 1运算符 1.1赋值运算符 (1)简单赋值 = 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值. 笔试题: ia == ...

随机推荐

  1. rsyn文件传输

    Rsync的命令格式可以为以下六种: rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST rsync [OPTION]. ...

  2. Learning Python 012 函数式编程 2 返回函数 匿名函数 装饰器 偏函数

    Python 函数式编程 2 返回函数 返回函数的意思就是:函数作为返回值.(高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回.) 举个例子:实现一个可变参数的求和. 正常的函数: de ...

  3. sql 删除重复数据保留一条

    --创建测试表 CREATE TABLE TEST ( DEPTNO ), DNAME ), LOC ) ); --插入测试数据 , 'test1', 'test2'); , 'test1', 'te ...

  4. IQA(图像质量评估)

    图像质量评价(Image Quality Assessment,IQA)是图像处理中的基本技术之一,主要通过对图像进行特性分析研究,然后评估出图像优劣(图像失真程度). 主要的目的是使用合适的评价指标 ...

  5. 深入浅出HTML PDF扫描版

    <深入浅出HTML>是一部讲述现代Web标准的优秀教程,彻底摒弃了过时的内容,始终贯彻三层分离的思想.书中结合实例讲述如何使用HTML.CSS设计符合现代Web标准的网页,并讲解了如何使用 ...

  6. 2、Jquery_事件

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  7. VR中运动控制器的传送系统

    创建一个VRPawn 新建一个BluePrint,父类选择Pawn,我们命名为VRPawn,打开它. 添加一个Scene命名为CameraRoot 在CameraRoot节点下添加一个Camera 在 ...

  8. cinder服务状态up/down的源码梳理

    基于ocata版本的,源码梳理 1)用户输入cinder service-list命令行,查看cinder服务的状态时,cinder的入口函数为cinder/api/contrib/services. ...

  9. 有关UPDATE操作的一些想法

    我们平常写代码的时候,无疑都会接触大量的数据CURD操作.第一反应是这太简单了,那么你在编写UPDATE操作的时候是怎样的逻辑呢?比较下面两段伪代码: code exp.1 $SQL = " ...

  10. windows系统IIS7环境下如何部署MVC项目

    首先打开IIS:第一步:添加MVC程序映射 打开其中的:处理程序映射,如下图: 点击界面右边操作中的:添加脚本映射,弹出下图: 请求路径:*           可执行文件:c:/Windows/Mi ...