黑马程序员----java基础运算符选择结构总结
2015-07-29 22:06
459 查看
<div style="text-align: center;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;"><strong>-</strong>-----<a target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------</span></span></div><h1 style="text-align: center;"><span style="font-family: Arial, Helvetica, sans-serif;"><strong>黑马程序员----java基础运算符选择结构总结</strong></span></h1> <h3><strong><span style="font-size:24px;">课堂总结:</span></strong></h3> <span style="font-size:14px;"> 1. 运算符 1. 逻辑运算符 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 1.& 有false则false </span></span></div><span style="font-size:14px;"> 1. & | ^ ! && || 2. 连接布尔类型表达式 3. 结果:true false 4. 总结: </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 5. && || 有短路的效果,提高程序的效率,在前半部分判断的结果决定了整个结果的时候,后边就不运行了</span></span></div><span style="font-size:14px;"> 2. | 有true 则true 3. ^ 同性为false,异性为true 4. ! 真变假 ,假变真 2. 位运算符(了解) </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 3. ^ 同性为0,异性为1</span></span></div><span style="font-size:14px;"> 1. & | ^ ~ << >> >>> 2. 移动二进制位的 3.总结 1.& 有0则0 2. | 有1则1 4. ~ 0变1 1变0 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 1. 格式 : int c = (a > b ) ? a : b;</span></span></div><span style="font-size:14px;"> 4. << >> 1. 左移右移 扩大或者缩小2的 位移次方倍 2. >>> 右移 补0 3. 三元运算符 2. 结果是赋值 2. 键盘录入 1. 三步步骤 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 3. 接收数据 sc.nextInt(); sc.nextLine();</span></span></div><span style="font-size:14px;"> 1. 导包 import java.util.Scanner; 2. 创建对象 Scanner sc = new Scanner(System.in); 4. 在控制台输入,方便我们运行程序 3. 流程控制语句 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> } else{</span></span></div><span style="font-size:14px;"> 1. 顺序结构--从上到下执行,默认 2. 选择结构 1. if 1. 格式一: if(关系表达式){ 执行语句; } 2. 格式二: if(关系表达式){ 执行语句1; </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 4. if格式二嵌套使用</span></span></div><span style="font-size:14px;"> 执行语句2; } 3. 格式三 : if(关系表达式1){ 执行语句1; }else if(关系表达式2){ 执行语句2; }... else{ 执行语句 n+1; } </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> break;</span></span></div><span style="font-size:14px;"> 2. switch 1. 格式: switch (表达式) { case 值1: 执行语句1; break; ... default : 执行语句n+1; } </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 1.定义三个整数</span></span></div><span style="font-size:14px;"> 2. 如果break省略,可能造成case穿透 3. 如果default省略,可能造成异常数据无法处理 4. case值的必须是常量,不能是变量 3. 循环结构 </span><strong><span style="font-size:24px;">课堂练习1:</span></strong><span style="font-size:14px;"> /* C:案例演示 获取三个整数中的最大值 分析: 2.使用三元 比较 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> int c =33; </span></span></div><span style="font-size:14px;"> 1.但是先两两比较,取出来较大的数 2.再跟第三个数比较 3.获得最大值 ,输出 */ class OperatorTest3{ public static void main(String[] args){ //定义三个整数 int a =11; int b =22; //使用三元比较, </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> // (a > b) ? a : b ; 使用三元运算符替换 a 和b </span></span></div><span style="font-size:14px;"> //第一个比较再定义一个变量,来保存较大值 int d = (a>b)?a:b; //第二次比较 使用d 和c 比较 int result = (d>c)?d:c; //获得结果输出 System.out.println(result); //改进版本 ,使用三元的嵌套解构 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> a = b++; a 10 b 11</span></span></div><span style="font-size:14px;"> int result2 = (a > b) ? ((a >c)?a :c ) : ((b>c)?b:c ); System.out.println(result2); } } </span><strong><span style="font-size:24px;">课堂练习2:</span></strong><span style="font-size:14px;"> /* 规则: A:案例演示 请分别计算出 a, b ,c 的值? int a = 10; int b = 10; int c = 10; c = --a; a 9 c 9 </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> public static void main(String[] args){ </span></span></div><span style="font-size:14px;"> b = ++a; a 10 b 10 a = c--; a 9 c 8 B:案例演示 :运算符的优先级 请分别计算出x,y的值? int x = 4; int y = (x++)+(++x)+(x*10); 4 6 6*10 = 70 5 6 */ class OperatorTest{ int a = 10; int b = 10; </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> int x = 4;</span></span></div><span style="font-size:14px;"> int c = 10; a = b++; //a 10 b 11 c = --a; // a 9 c 9 b = ++a; // a 10 b 10 a = c--; System.out.println(a); System.out.println(b); System.out.println(c); System.out.println("--------------"); </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> else if (关系表达式n){</span></span></div><span style="font-size:14px;"> int y = (x++)+(++x)+(x*10); //int y = (x++) + 100; //简单的来看,看这行 System.out.println(x); System.out.println(y); } } </span><strong><span style="font-size:24px;">课堂练习3:</span></strong><span style="font-size:14px;"> /* if语句第三种格式: if(关系表达式1){ 语句体1; }else if (关系表达式2){ 语句体2; }else if (关系表达式3){ 语句体3; }..... 语句体 n; </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> 3.接收数据</span></span></div><span style="font-size:14px;"> }else{ 语句体 n + 1; } 需求: 键盘录入x的值,计算出y的并输出。 x>=3 y = 2x + 1; -1<x<3 y = 2x; x<=-1 y = 2x – 1; 分析: 键盘录入 1.导包 import java.util.Scanner; 2.创建对象 Scanner sc = new Scanner(System.in); </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> //创建对象</span></span></div><span style="font-size:14px;"> int x = sc.nextInt(); 4.判断 1.定义 变量 y 2.判断x的范围 如果x>=3 ,那么 y = 2x + 1; 否则x>-1 && x<3 ,那么y =2x; 否则x<=-1 ,那么 y =2x-1 5.输出y */ //导包 import java.util.Scanner; class IfTest3{ public static void main(String[] args){ </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;">// y =2*x-1;</span></span></div><span style="font-size:14px;"> Scanner sc = new Scanner(System.in); System.out.println("请输入 x 的值 ..."); //接收数据, 拿到x int x = sc.nextInt(); // 判断 // 定义变量 y int y ; if (x>=3){ y = 2*x + 1; }else if ( x>-1 && x<3){ y =2*x; } // else if (x <=-1){ //可能尚未初始化变量y // } else{ y =2*x-1; } </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;">}</span></span></div><span style="font-size:14px;"> System.out.println("y的运算结果为"+ y); </span><div style="text-align: left;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:14px;"> }</span></span></div>
相关文章推荐
- #无私分享《传智播客2011版。net平台c#视频》全套哦30.7G
- 黑马程序员---Java面向对象编程思想小结
- 黑马程序员---java面向抽象/接口编程
- 黑马程序员---java单例设计模式
- 黑马程序员---java字符串常用类
- 黑马程序员宣传语征集大赛
- 黑马程序员-------关于今天的一个程序学习心得
- 黑马程序员----把Eclipse修改为黑色主题颜色方案
- c基础语法(一)---流程控制与函数
- C基础语法(二)---复杂数据类型(数组和字符串)
- C基础语法(三)---复杂数据类型(指针)
- OC基础语法(三)---核心语法(1)
- OC基础语法(四)---核心语法(2)
- OC基础语法(五)---内存管理
- OC基础语法(六)---内存管理(二)
- OC基础语法(七)---Foundation框架
- 黑马程序员
- 程序员常用英语大集合 http://bbs.itheima.com/thread-118950-1-1.html (出处: 黑马程序员IT技术论坛)
- IO(输入输出流) 4000
- 黑马程序员_多线程(1)