java-基础语法01
一、变量
1、 何为变量?:在数学中变量就是一个不确定的量,随时都会改变,在java中变量也是这样,只不过它是内存中装载数据的小盒子,你只能用它来存数据和取数据。

2、 变量的基本类型(四类八种),见下图:

3、 变量使用的注意事项
1) 变量定义后可以不赋值,使用时再赋值,不赋值不能使用。
2) 变量使用时有作用域的限制(一对花括号{}为一个作用域,即变量在一个花括号内声明只能在此花括号内使用)。
3) 变量不可以重复定义
4、 数据类型转换
将各种数据类型按照数据范围从小到大依次列出:
byte->short->int->long->float->double

自动类型转换
表示范围小的数据类型转换成范围大的数据类型,这种方式称为自动类型转换
自动类型转换格式:
范围大的数据类型 变量 = 范围小的数据类型值;
如:

强制类型转换
表示范围大的数据类型转换成范围小的数据类型,这种方式称为强制类型转换
强制类型转换格式:
范围小的数据类型 变量 = (范围小的数据类型) 范围大的数据类型值;
如:

二、运算符
1、 算算术运算符
运算符是用来计算数据的符号。数据可以是常量,也可以是变量。被运算符操作的数我们称为操作数。
算术运算符最常见的操作就是将操作数参与数学计算,具体使用看下图:

我们在使用算术运算符时,记得要注意下列事项:
1) 加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。
2) 除法 / 当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。
3) % 为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。
4) 整数做被除数,0不能做除数,否则报错。
2、 运算符++、--的使用
在一般情况下,算数运算符不会改变参与计算的变量值。而是在原有变量值不变的情况下,计算出新的值。
但是有些操作符会改变参与计算的变量的值,比如++,--。
看一段代码

上面代码的输出结果a值为4,b值为2。
说明a的原有值发生了改变,在原有值的基础上自增1;b的原有值也发生了改变,在原有值的基础上自减1。
++运算符会在原来的基础上自增1。
--运算符会在原来的基础上自减1。
我们再看一段代码

上面代码的输出结果a值为4,b值为2。
这说明++,--运算符单独使用,不参与运算操作时,运算符前后位置导致的运算结果是一致的。
接下来,介绍下++,--运算符后置时,参与运算操作时,发生了怎样的变化,我们来看一段代码:

上面代码的输出结果a值为4,b值为13。
这里我要强调一下了,当++,--运算符参与运算操作时,后置++,--的作用:
++,--运算符后置时,先使用变量a原有值参与运算操作,运算操作完成后,变量a的值自增1或者自减1。
再介绍下++,--运算符前置时,参与运算操作的变化,我们来看一段代码:

上面代码的输出结果a值为4,b值为14。
这里我强调一下,当++,--运算符参与运算操作时,前置++,--的作用:
++,--运算符前置时,先将变量a的值自增1或者自减1,然后使用更新后的新值参与运算操作。
3、 赋值运算符
赋值运算符的使用看下图:

注意:诸如+=这样形式的赋值运算符,会将结果自动强转成等号左边的数据类型。
写一个代码,我们看一下赋值运算符的使用

运行结果如下图所示

4、比较运算符
比较运算符,又叫关系运算符,它是用来判断两个操作数的大小关系及是否相等关系的,结果是布尔值true
或者false。

赋值运算符的 = 符号与比较运算符的 == 符号是有区别的,如下:
1) 赋值运算符的 = 符号,是用来将 = 符号右边的值,赋值给 = 符号左边的变量。
2) 比较运算符的 == 符号,是用来判断 == 符号 左右变量的值是否相等的。
我们通过下面的一段代码,我们演示一下这个注意事项:

上面代码输出的结果第一个值为4,第二个值为false。
5、 逻辑运算符
逻辑运算符,它是用于布尔值进行运算的,运算的最终结果为布尔值true或false。

看完图后,我们来看一下逻辑运算符的常规使用方式:
逻辑运算符通常连接两个其他表达式计算后的布尔值结果
当使用短路与或者短路或时,只要能判断出结果则后边的部分就不再判断。
我们通过代码演示一下:

我们来总结一下运算符的结果规律吧:
1) 短路与 && :参与运算的两边数据,有false,则运算结果为false,如果左边为false,右边不参与运算。
2) 短路或 || :参与运算的两边数据,有true,则运算结果为true,如果左边为true,右边不参与运算。
3) 逻辑非 ! :参与运算的数据,原先是true则变成false,原先是false则变成true。
6、 三目运算符
接下来我们要学习的三元运算符与之前的运算符不同。之前学习的均为一元或者二元运算符。元即参与运算
的数据。
格式:

表达式:通俗的说,即通过使用运算符将操作数联系起来的式子,例如:
1)3 + 2 ,使用算数运算符将操作数联系起来,这种情况,我们称为算数表达式。
2)3 > 2 ,使用比较运算符(也称为条件运算符)将操作数联系起来,这种情况,我们称为条件表
三元运算符运算规则:
先判断 条件表达式 的值,若为 true ,运算结果为 表达式1 ;若为 false ,运算结果为 表达式2 。
通过代码演示,我们来学习下三元运算符的使用:

7、 运算符优先级
一张图明了:

java-基础语法01的更多相关文章
- 006 01 Android 零基础入门 01 Java基础语法 01 Java初识 06 使用Eclipse开发Java程序
006 01 Android 零基础入门 01 Java基础语法 01 Java初识 06 使用Eclipse开发Java程序 Eclipse下创建程序 创建程序分为以下几个步骤: 1.首先是创建一个 ...
- 005 01 Android 零基础入门 01 Java基础语法 01 Java初识 05 Eclipse简介
005 01 Android 零基础入门 01 Java基础语法 01 Java初识 05 Eclipse简介 Eclipse是一款集成开发工具--IDE. 集成开发环境(IDE,Integrated ...
- 004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构
004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构 Java程序的结构 Java程序外层--类 程序外层,如下面的代码,是一个类的定义. c ...
- 003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程
003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程 Java程序长啥样? 首先编写一个Java程序 记事本编写程序 打开记事本 1.wi ...
- 002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介
002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介 学习Java的基础语法 Java是一门编程语言,学习的逻辑其实和现实世界的语言是一样的,需要了 ...
- 001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学
001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学 welcome to Java World 欢迎来到Java世界 一起领略Java编程世界的奥秘与奥妙 ...
- Java基础语法01——变量与运算符
本文是对Java基础语法的第一部分的学习,包括注释:标识符的命名规则与规范:变量的数据类型分类以及转换:以及六种运算符(算术.赋值.比较.逻辑.三元和位运算符).
- Java基础语法01
一.Java入门 Java 是最好的语言吗? 不是,因为在每个领域都有更合适的编程语言. Java技术体系平台 JavaSE//JavaEE//JavaME Java程序的结构 类{ 方法{ 语句; ...
- Java基础语法入门01
Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...
- 075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现
075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现 本文知识点:综合案例-数组移位-主方法功能4的实现 说明:因为 ...
随机推荐
- 从Header中获得信息
/// <summary> /// 获得header信息 /// </summary> /// <param name="response">& ...
- jquery对象及页面加载完成写法
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- ASP POST请求
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- Java发展历程
Java 的发展要追溯到 1991 年,Patrick Naughton(帕特里克·诺顿)和 James Gosling(詹姆斯·高斯林)带领 Sun 公司的工程师打算为有线电视转换盒之类的消费产品设 ...
- Win8Metro(C#)数字图像处理--2.33图像非线性变换
原文:Win8Metro(C#)数字图像处理--2.33图像非线性变换 [函数名称] 图像非线性变换函数NonlinearTransformProcess(WriteableBitmap src ...
- PHP 的异步并行 C 扩展 Swoole
PHP的异步.并行.高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列, ...
- Qt系统对话框中文化及应用程序实现重启及使用QSS样式表文件及使用程序启动界面
一.应用程序中文化 1).Qt安装目录下有一个目录translations/,在此目录下有qt_zh_CN.ts和 qt_zh_CN.qm把它们拷贝到你的工程目录下. 2).在main函数加入下列代码 ...
- Qt加载百度离线地图
1.下载百度地图离线API 1.3 下载链接:http://download.csdn.NET/detail/caoshangpa/9476608,网上虽然出现了2.0版本离线API,但是经试用,存在 ...
- Delphi 使用双缓冲解决图片切换时的闪烁问题 good
var TempCanvas: TCanvas; BufDC: HDC; BufBitmap: HBITMAP; begin // 创建一个与显示设备兼容的内存设备 BufDC := CreateCo ...
- kafka笔记1
Kafka是一款基于发布和订阅的消息系统.一般被称为分布式提交日志或分布式流平台. Kafka系统是按照一定的顺序持久化保存的,可以按需读取. Kafka的数据单元被称为消息.类似于数据库中表的一行记 ...