黑马程序员全套Java教程_Java基础入门视频教程零基础自学Java必备教程视频讲义(2)
12.强制类型转换
把一个数据范围大的数值或者变量赋值给另一个表示数据范围小的变量 与11正好相反(见上文)
格式:目标数据类型变量名=(目标数据类型)值或者变量;
//强制类型转换int k=(int)88.88;System.out.println(k);//输出为88,不建议使用会造成数据丢失 例: 88.88变为88
13.算数运算符(同C语言)
//算术运算符int a =4;int b =6;System.out.println(a+b);System.out.println(a-b);System.out.println(a*b);System.out.println(a/b);System.out.println(a%b);//整数相处只能得到整数,想的到小数,必须要有浮点数的参与System.out.println(6.0/4);//输出 //10//-2//24//0//4//1.5
14.字符'+'操作
算数表达式中包含多个基本数据类型的值的时候,整个算数表达式的类型会自动进行提升
提升规则:
byte类型,short类型和char类型将被提升到int类型
整个表达式的类型自动提升到表达式中最高等级操作数同样的类型
等级顺序:byte,short,char→int→long→float→double
//定义两个变量int i =10;char c ='A';System.out.println(i+c);//输出结果为75 可知A为65//char类型会被自动 提升为int类型
当"+"操作中出现字符串是时,这个"+"是字符串连接符,而不是算数运算 例:"Yao"+6180
在"+"操作中,如果出现了字符串,就是连接运算符,否则就是算数运算。当连续进行"+"操作时,从左到右逐个执行 例:1+99+"Yao"
System.out.println("Mengyao"+" Lin");System.out.println("Yao"+"0618");System.out.println("Yao"+6180);System.out.println(6180+"Yao");//字符串拼接System.out.println("Yao"+6180+888);System.out.println(1+99+"Yao");//先做加法运算//输出:Yao6180// 6180Yao// Yao6180888// 100Yao
15.赋值运算符"="
a=10 读法:将10赋值给变量a
//把10赋值给int类型的变量iint i =10;System.out.println(i);System.out.println("i:"+i);// +=把左边和右边的数据做加法操作,结果赋值给左边i=i+20;//结果等价于i+=20;System.out.println("i:"+i);//注意:int类型加上数字不会报错,如果short就会报错,涉及到强转换因为数字属于int类型//注意:扩展的赋值运算符底层隐含看强制类型的转换short s=10;s= (short)(s + 20);//强转换,不建议用此方法,优先下面的方式//s +=20;System.out.println("s:"+s);//输出:10// i:10// i:30// s:30
16.自增自减运算符
++和 - - 既可以放在变量的后面,也可以放在变量的前面
单独使用的时候,++和- - 无论是放在变量的前面还是后面,结果还是一样的。
参与操作的时候,如果放在变量的后面,先拿变量参与操作,后拿变量做++或者- -
参与操作的时候,如果放在变量的前面,先拿变量做++或者- -,后拿变量参与操作 详情如下方代码所示
最常见的语法:单独使用
//定义变量int i=10;System.out.println("i:"+i);//i++;和下面的效果一样都是11//单独使用//++i;//参与操作使用,如果是i++则先把i的值赋值给j,i再做++//int j = i++;//如果++i则先进行++再赋值给jint j= ++i;System.out.println("i:"+i);System.out.println("j:"+j);
17.关系运算符
关系运算符的结果都是boolean类型,要么是true,要么是false
千万不要把"=="误写成"="
//定义变量int i =10;int j =20;int k = 10;// ==System.out.println(i == j);System.out.println(i == k);System.out.println("--------");// !=System.out.println(i != j);System.out.println(i != k);System.out.println("--------");// >System.out.println(i > j);System.out.println(i > k);System.out.println("--------");// >=System.out.println(i >= j);System.out.println(i >= k);System.out.println("--------");//如果只写一个= ,则做的是赋值运算,以第一个为例//把j的值赋值给了i,然后输出i的值System.out.println(i = j);
//输出:false
// true
// --------
// true
// false
// --------
// false
// false
// --------
// false
// true
// --------
// 20
18.逻辑运算符
&&其实就是一个逻辑运算符,是用来连接关系表达式的运算符
逻辑运算符也可以直接链接布尔类型的常量或者变量
//定义变量int i =10;int j =20;int k = 30;//& 与 有false则false 都是true才是trueSystem.out.println((i > j ) & ( i > k ));//false & falseSystem.out.println((i < j ) & ( i > k ));//true & falseSystem.out.println((i > j ) & ( i < k ));//false & trueSystem.out.println((i < j ) & ( i < k ));//true & trueSystem.out.println("--------");// | 或 有true则true 都是false才是falseSystem.out.println((i > j ) | ( i > k ));//false | falseSystem.out.println((i < j ) | ( i > k ));//true | falseSystem.out.println((i > j ) | ( i < k ));//false | trueSystem.out.println((i < j ) | ( i < k ));//true | trueSystem.out.println("--------");// ^ 异或 相同为false 不同为trueSystem.out.println((i > j ) ^ ( i > k ));//false ^ falseSystem.out.println((i < j ) ^ ( i > k ));//true ^ falseSystem.out.println((i > j ) ^ ( i < k ));//false ^ trueSystem.out.println((i < j ) ^ ( i < k ));//true ^ trueSystem.out.println("--------");// ! 非 结果相反System.out.println((i > j ));//falseSystem.out.println(!(i > j ));//!falseSystem.out.println(!!(i > j ));//!!falseSystem.out.println(!!!(i > j ));//!!!false//输出:false//false//false//true//--------//false//true//true//true//--------//false//true//true//false//--------//false//true//false//true
19.短路逻辑运算符
逻辑与&,无论左边真假,右边都要执行
短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行
逻辑或|,无论左边真假,右边都要执行
短路或||,无果左边为假,右边执行;如果左边为真,右边不执行 二者正好相反
最常用的逻辑运算符:&& || !
//定义变量int i =10;int j =20;int k = 30;//&&System.out.println((i > j ) && ( i > k ));//false && falseSystem.out.println((i < j ) && ( i > k ));//true && falseSystem.out.println((i > j ) && ( i < k ));//false && trueSystem.out.println((i < j ) && ( i < k ));//true && trueSystem.out.println("--------");// || System.out.println((i > j ) || ( i > k ));//false || falseSystem.out.println((i < j ) || ( i > k ));//true || falseSystem.out.println((i > j ) || ( i < k ));//false || trueSystem.out.println((i < j ) || ( i < k ));//true || trueSystem.out.println("--------");//&&和&//System.out.println((i++ > 100) & (j++ > 100 ));// false $ falseSystem.out.println("i:" + i);System.out.println("j:" + j);System.out.println((i++ > 100) && (j++ > 100 ));// false &$ falseSystem.out.println("i:" + i);System.out.println("j:" + j);//false//false//false//true//--------//false//true//true//true//--------//i:10//j:20//false//i:11//j:20
20.三元表达式
格式:关系表达式?表达式1:表达式2;
范例:a>b?a:b;
计算规则:
首先计算关系表达式的值
如果值为true,表达式1的值就是运算结果
如果值为false,表达式2的值就是运算结果
//定义两个变量int a =10;int b=20;//获取两个数据当中的最大值int max = a > b ? a : b;System.out.println( "max:"+ max);//输出:max:20
案例:两只老虎
需求:动物园里面有两只老虎,已知两只老虎的体重分别为180kg 200kg 请用程序实现判断两只老虎的体重是否相同
分析:
(1)定义两个变量用于保存老虎的体重,单位为kg,这里仅仅体现数值即可
int weight1 =180;
int weight2 =200
(2)用三元运算符实现老虎体重的判断,体重相同,返回true,否则,返回false
(weight1 == weight2) ? ture:false;
(3)输出结果
//(1)int weight1 =180;int weight2 =200;//(2)boolean b = weight1 == weight2 ? true : false;//(3)System.out.println("b:" + b);//输出: b:false
案例:三个和尚
三个和尚的身高分别为 210cm 165cm 150cm
分析:
(1)定义三个变量用于保存和尚的身高,单位为cm,这里仅仅体现数值即可
int height1 = 150;
int height2 = 165;
int height3 = 210;
(2)用三元运算符获取前两个和尚的比较身高值,并用临时身高变量保存起来
(height1>height2)?height1:height2;
(3)用三元运算符获取临时身高值和第三个和尚身高比较较高值,并用最大身高变量保存
(tempHeight>height3)? tempHeight:height3;
(4)输出结果
//(1)int height1 = 150;int height2 = 165;int height3 = 210;//(2)int tempHeight =(height1>height2)?height1:height2;//(3)int max =(tempHeight>height3)? tempHeight:height3;//(4)System.out.println("max:"+ max);//输出:max:210
黑马程序员全套Java教程_Java基础入门视频教程零基础自学Java必备教程视频讲义(2)相关推荐
- 黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三)
黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三) 1.1 异常概述与异常体系结构 1.2 JVM遇到异常时的默认处理方案 1.3 异常处理 1.4 异常处理之try--catch ...
- Python从入门到实战 基础入门视频教程(讲解超细致)-黄勇-专题视频课程
Python从入门到实战 基础入门视频教程(讲解超细致)-4123人已学习 课程介绍 Python基础入门视频教程:本课程从Python入门到纯Python项目实战.超100以上课时, ...
- 黑马程序员-我的入学笔记1-关于C#.net基础
---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net ...
- 黑马程序员 一步一步往上爬 学习毕老师java视频的第03,04天
---------------------- <a href="http://edu.csdn.net/heima" target="blank"> ...
- 黑马程序员 一步一步往上爬 学习毕老师java视频第17,18,19天
---------------------- <a href="http://edu.csdn.net/heima" target="blank"> ...
- 2022年最新最全的Java零基础入门,零基础入门springboot,MySQL的学习
今天就来开始带领大家零基础入门Java开发 写在前面 为什么学习Java Java用途很广泛,如下图所示,Java可以做很多工作 JAVA语言发展史 2019年3月,JDK12版本发布. 2019年9 ...
- 资深程序员教你,用python入门的知识抓取抖音短视频,太厉害了
抖音短视频可以说是当下最流行的自媒体平台,而python编程同样也是目前最流行的编程语言. 今天,就让一位大厂的资深程序员,用最简单的方式,使用python抓取抖音短视频. 到时候我会把所有的源代码都 ...
- JavaScript整合版——后端程序员学js,只读一文直接零基础入门,大学生期末考试不挂科宝典。
文章目录 建议朋友们在学习的过程中,边写边看 一.hello 二.html 1. 标签语法 2.font标签 3.特殊字符 4.标题标签 5.超链接(重点) 6.列表标签 7.img标签 8.表格标签 ...
- 易语言零基础入门视频教程 易语言自学全套教程
易语言是一门以中文作为程序代码编程语言.易语言早期版本的名字为E语言.其最早的版本的发布可追溯至2000年9月11日.创造易语言的初衷是进行用中文来编写程序的实践,方便中国人以中国人的思维编写程序,并 ...
- python快乐编程—基础入门-Python零基础快乐学习之旅(K12实战训练)
内容简介 作者简介 第1章 基本概念 1-1 认识Python 1-2 Python的起源 1-3 Python语言发展史 1-4 Python的应用范围 1-5 跨平台的程序语言 1-6 系统的安装 ...
最新文章
- python苹果手机的api_Python中的api,API
- 基于用户投票的排名算法Reddit
- Tiles Framework
- linux 标准输入句柄,标准文件描述符与标准文件句柄
- NOIP2018-普及参赛总结
- Xtreme TaskPanel
- 作一个真正合格的飞秋局域网聊天
- 51nod1255【贪心-栈的应用】
- leaflet地图区域数据可视化
- 当java 8 lambda遇上uncheck exception
- 英语语法快速入门1--简单句(附思维导图)
- mysql日期函数之DATEDIFF() if()用法 case when用法
- 屏幕录制组件(vue) recordrtc
- 怎么恢复永久删除的文件
- python实现微信机器人: 登录微信、消息接收、自动回复
- Python 文件与数据格式化
- 入手评测 赛扬g6900和奔腾g7400 选哪个好
- 计算机整机配置原则,电脑主机高端配置标准 电脑高端主机怎么配置
- 红帽Linux8.0 06管理本地用户和组
- python求抛物线和直线面积_求抛物线与直线形成的面积(数学)
热门文章
- winform界面控件丢失的问题
- Android编程 移动应用开发 经典习题案例 (附案例 注意点)
- 【读书笔记《Android游戏编程之从零开始》】7.Android 游戏开发常用的系统控件(Dialog)
- 佳能g2800加墨水后发生打印机错误5b00_备注!淳安县联想LJ4000D黑白激光打印机销售,县联想M7400Pro打印机长租...
- uniapp本地开发小程序代码超过2M,不能预览和真机调试解决办法
- 浪潮gs设置连接服务器信息,浪潮GS系统客户端设置方案
- vb.net 教程 11-1 打印组件 1 基础
- 计算机组成原理(白中英) 第四章 课后题答案
- Java (计算机编程语言)
- 如何在Java语言编程中,如何输入一个char型字符