Java_Day03(java 基础上,运算符等)

1:运算符(掌握)
(1)算术运算符
A:+,-,*,/,%,++,--
B:+的用法
a:加法
b:正号
c:字符串连接符
C:/和%的区别
数据做除法操作的时候,/取得是商,%取得是余数
D:++和--的用法
a:他们的作用是自增或者自减
b:使用
**(即++或--)单独使用
放在操作数据的前面和后面效果一样。
a++或者++a效果一样。
**(即++或--)参与操作使用
放在操作数的前面:先自增或者自减,再参与操作
int a = 10;
int b = ++a;
放在操作数的后面:先参与操作,再自增或者自减
int a = 10;
int b = a++;

最重要的面试题:
int x=4;
int y=(x++)+(++x)+(x*10);//每一个括号就会当作一次操作(x++)在操作后进行,所以(x++)模块输出为4,执行完(x++)后x=5,(++x)模块输出为6,此时x为6,最后加上6*10,总数为70
//y=4+6+(6*10)=70
//x=6
System.out.println(x);//6
System.out.println(y);//70

注意:整数相除只能得到整数,如果想得到小数,必须把数据化为浮点数类型
System.out.println(a*1.0/b);
System.out.println(a*1.0+b);

(2)赋值运算符
A:=,+=,-=,*=,/=,%=等
B:=叫做赋值运算符,也是最基本的赋值运算符
int x = 10; 把10赋值给int类型的变量x。
C:扩展的赋值运算符的特点
隐含了自动强制转换。

面试题:
short s = 1;
s = s + 1;

short s = 1;
s += 1;
请问上面的代码哪个有问题?
(3)比较运算符
A:==,!=,>,>=,<,<=
B:无论运算符两端简单还是复杂最终结果是boolean类型。
C:千万不要把==写成了=
(4)逻辑运算符
A:&,|,^,!,&&,||
B:逻辑运算符用于连接boolean类型的式子
C:结论
&:有false则false
|:有true则true
^:相同则false,不同则true。
情侣关系。
!:非true则false,非false则true

&&:结果和&是一样的,只不过有短路效果。左边是false,右边不执行。
||:结果和|是一样的,只不过有短路效果。左边是true,右边不执行。
(5)位运算符(了解)
A:^的特殊用法
一个数据针对另一个数据位异或两次,该数不变
B:面试题
a:请实现两个变量的交换
**采用第三方变量
**用位异或运算符
左边a,b,a
右边a^b
b:请用最有效率的方式计算出2乘以8的结果
2<<3
(6)三元运算符,三目运算符
A:格式
比较表达式?表达式1:表达式2;
B:执行流程:
首先计算比较表达式的值,看是true还是false。
如果是true,表达式1就是结果。
如果是false,表达式2就是结果。
C:案例:
a:比较两个数据是否相等
b:获取两个数据中的最大值
c:获取三个数据中的最大值

2:键盘录入(掌握)
(1)实际开发中,数据是变化的,为了提高程序的灵活性,我们加入键盘录入数据。
(2)如何实现呢?目前就记住
A:导包
import java.util.Scanner;
位置:在class的上边
B:创建对象
Scanner sc = new Scanner(System.in);
C:获取数据
int x = sc.nextInt();
(3)把三元运算符的案例加入键盘录入改进。

3:流程控制语句
(1)顺序结构 从上往下,依次执行
(2)选择结构 按照不同的选择,执行不同的代码
(3)循环结构 做一些重复的代码

4:if语句(掌握)
(1)三种格式
A:格式1
if(比较表达式) {
语句体;
}

执行流程:
判断比较表达式的值,看是true还是false
如果是true,就执行语句体
如果是false,就不执行语句体

B:格式2
if(比较表达式) {
语句体1;
}else {
语句体2;
}

执行流程:
判断比较表达式的值,看是true还是false
如果是true,就执行语句体1
如果是false,就执行语句体2

C:格式3
if(比较表达式1) {
语句体1;
}else if(比较表达式2){
语句体2;
}
...
else {
语句体n+1;
}

执行流程:
判断比较表达式1的值,看是true还是false
如果是true,就执行语句体1
如果是false,就继续判断比较表达式2的值,看是true还是false
如果是true,就执行语句体2
如果是false,就继续判断比较表达式3的值,看是true还是false
...
如果都不满足,就执行语句体n+1
(2)注意事项
A:比较表达式无论简单还是复杂,结果是boolean类型
B:if语句控制的语句体如果是一条语句,是可以省略大括号的;如果是多条,不能省略。
建议:永远不要省略。
C:一般来说,有左大括号,就没有分号,有分号,就没有左大括号。
D:else后面如果没有if,是不会出现比较表达式的。
E:三种if语句其实都是一个语句,只要有一个执行,其他的就不再执行。
(3)案例:
A:比较两个数是否相等
B:获取两个数中的最大值
C:获取三个数中的最大值(if语句的嵌套)
D:根据成绩输出对应的等级
E:根据月份,输出对应的季节
F:根据x计算对应y的值并输出
(4)三元运算符和if语句第二种格式的关系
所有的三元运算符能够实现的,if语句的第二种格式都能实现。
反之不成立。

如果if语句第二种格式控制的语句体是输出语句,就不可以。
因为三元运算符是一个运算符,必须要有一个结果返回,不能是一个输出语句。

时间: 2024-08-05 14:31:19

Java_Day03(java 基础上,运算符等)的相关文章

从0开始学大数据-Java基础-三元运算符/键盘录入(4)

我们从零开始学习大数据技术,从java基础,到Linux技术涉猎,再深入到大数据技术的Hadoop.Spark.Storm技术,最后到大数据企业平台的搭建,层层递进,由点到面!希望技术大牛能过来指导学习. 上一节了解Java运算符,其中三元运算符没有做讲解,本节我们开始学习Java基础-三元运算符/键盘录入,将会围绕以下几个知识点进行展开学习: 三元运算符 键盘录入数据 一.运算符 1.三元运算符 接着上一节的话题运算符,本节讲三元运算符,在讲三元运算符之前,可能会有很多朋友会问,是不是有一元运

Java基础-位运算符Bitwise Operators

Java基础-位运算符Bitwise Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 原文地址:https://www.cnblogs.com/yinzhengjie/p/8689059.html

Java基础 3. 运算符

Java基础 3. 运算符 目标 掌握数据类型转换 掌握算术运算符.赋值运算符 掌握逻辑运算符 掌握关系运算符.条件运算符 一.数据类型转换 //Demo1.java public class Demo1 { public static void main(String[] args) { //按照数值非数值分类 //数据类型:数值(整型int 浮点型float.double) //非数值(字符串String,字符char,布尔boolean(true.false)) //按照基本引用数据类型

Java_Day04(java 基础上,选择结构,循环结构,转跳)

1:switch语句(掌握) (1)格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n+1; break; } 格式解释说明: switch:说明这是switch语句. 表达式:可以是byte,short,int,char JDK5以后可以是枚举 JDK7以后可以是字符串 case:后面的值就是要和表达式进行比较的值 break:表示程序到这里中断,跳出switch语句 default:如

Java基础——上

第一部分:Java基础 1.什么是 Java 虚拟机?为什么 Java 被称作是"平台无关的编程语言"? Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程.Java 源文件被编译成能被 Java 虚拟机执行的字节码文件. 一次编译,到处运行(前提:有JVM虚拟机)的原因是:Java是基于虚拟机的语言,它的执行过程是:现经过编译,编译成字节码(.class)文件,在执行的时候通过解释器 将字节码文件根据底层硬件平台的指令长度和其他特性解释成机器语言,之后在运行 2.Java中

java基础总结-运算符

[变量的赋值与计算都离不开表达式,表达式的运算依赖于变量.常量和运算符.本节课讨论Java的表达式的构成.常量的定义.运算符的分类及应用.通过本课的学习你将掌握运用表达式和运算符完成变量赋值.条件判断.数学运算.逻辑运算等功能操作] 在讲述课程内容之前,先看一个求圆面积的问题.求圆面积的公式为: 其中S为圆面积,π为圆周率,r为半径. 假设用程序来计算圆的面积,S.π.r均为变量,省略的乘号为运算符,r的2次方可以描述为r*r.则上面的公式即为求圆面积的表达式. 结合上面的案例,本节课程分为三个

Java基础(运算符)

---恢复内容开始--- Java中的运算符: 算术运算符:+  -  *  /   %    ++     -- %运算符叫取模:它就是取余的例如:43%7=1 其他的都是和数学里的运算符一样(不过在字符串中如果是两个字符串相加那么就是拼接了) ++和--它们的作用是自增,自减 单独使用:a++与++a没什么区别 操作使用:System.out.println(a++)这是先打印后运算System.out.println(++a)这是先运算后打印. 赋值运算符:=,+=,-=,/=,%=(这是

黑马程序员----java基础之运算符、键盘录入、if switch语句、附相关面试题

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 1:运算符(掌握) (1)算术运算符 A:+,-,*,/,%,++,-- 注意事项:整数相除只能得到整数,如果想得到小数,必须先把数据变化为浮点数类型.如3/4结果为0,3*0.1/4=0.75 B:+的用法 a:加法 b:正号 c:字符

再回首,Java温故知新(七):Java基础之运算符

常规算数运算符 包括+.-.*./.%分别对应着加.减.乘.除.取余,算数运算符所处理的两个数字必须为同种类型,如果是不同类型且无法进行自动类型转换的话必须进行强制类型转换,不过强制类型转换可能会丢失一些信息,另外还有简写方法+=之类,如下: int i = i + 1; //上下两个算式其实是一样的 //相应的其他运算符也有此种简写,例如*=int i += 1; 自增自减 有编程基础的应该知道,在程序中对变量进行加一减一操作是非常常见的,而自增自减运算符就是简化了此种操作,此部分的难点在于自