黑马程序员技术交流社区
标题:
Java0618基础班第三天手敲笔记
[打印本页]
作者:
jkdong
时间:
2015-6-26 15:56
标题:
Java0618基础班第三天手敲笔记
1.回顾
通过作业讲解完成。
2. 逻辑运算符
& -- 与 -- 有假则假,全真才真
| -- 或 -- 有真则真,全假才假
! -- 非 -- 真变假,假变真
^ -- 异或 -- 相同则假,不同为真。
&& 短路与 -- 结果与&相同,但如果左边表达式为false,右边将不再参与比较运算。
|| 短路或
使用: 开发中常使用 && || !
3. 位运算符
& -- 按位与 -- 有0则0,全1才1
| -- 按位或 -- 有1则1,全0才0
^ -- 按位异或 -- 相同则0,不同为1。
一个数据对另一个数据异或两次,还是它本身。
~ -- 按位取反 -- 所有(包括符号位)1变0 ,0变1
注意:计算的时候,一定要先得到数据的二进制数,然后得到反码,再得到补码,然后参与运算。
运算结果也是补码形式,再反推回来,得到原码,计算其十进制的值。这才是我们看到的结果。
<< 左移 -- 二进制数据向左移动指定位数,右侧用0补齐,舍弃高位。相当于乘以2的指定次幂。
>> 右移 -- 二进制数据向右移动指定位数,左侧如果原来是1,用1补齐,如果是0,用0补齐。相当于除以2的指定次幂。
>>> 无符号右移 -- 二进制数据向右移动指定位数,左侧用0补齐。运算结果肯定是整数。
int temp = a;
a = b;
b = temp;
a = a^b;
b = a^b;
a = a^b;
注意事项:
测试程序的时候,分段进行。多段代码操作同一个数据资源,有可能相互影响。
变量会变的!如果前面已经对该变量的值做了操作,那么后面使用的时候,用的是改变后的值。
4. 条件运算符
(条件表达式) ? 表达式1 : 表达式2
如果条件表达式为true,执行1;
如果条件表达式为false,执行2.
5. if语句的第一种格式
// 格式化良好。
if (条件表达式) { // 执行结果肯定是boolean类型。
// 判断体里面的代码
}
if (条件表达式) -- 注意这不要敲错分号
{ // 执行结果肯定是boolean类型。
// 判断体里面的代码
}
// 要求:目前必须把if语句后面的{} 加上。
局部代码块:它是方法里面出现的一对{},这里面的代码就是局部代码块。
作用:就是控制变量的声明周期。使变量尽早的从内存中消失。
main() {
int x = 10;
int y = 20;
...
{
int z = 30;
}
...
}
练习:
考试成绩分等级。
90-100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
请根据给定成绩,输出对应的等级。
6. if语句的第二三中格式
第二种
if (条件表达式)
{
// 执行语句
}
else
{
// 执行语句
}
if后面的判断条件为真,走if下面的,否则走else下面的。肯定有一个会执行.
第三种:
if (条件表达式1)
{
// 执行语句1
}
else if (条件表达式2)
{
// 执行语句2
}
...
else
{
// 前面的都不走,那就走这。
}
注意事项:
1)else后面是不能直接跟条件表达式的
2)最后面的一个else可以不写,但是建议写。
3)If语句的第三种格式,一旦某个地方满足,就不往下执行。
4)在第三种格式中,不要让多个表达式同时为真.(提醒大家注意业务逻辑判断时的边界问题)
7. 键盘录入分数并判断
import java.util.Scanner; // 步骤一导包
class Demo
{
mian() {
Scanner s = new Scanner(System.in); // 步骤二 创建对象,封装键盘录入
int i = s.nextInt(); // 步骤三 这个方法的作用是获取键盘录入的下一个int值。如果不是int类型的数值,报一个异常。
}
}
练习:
一年有12个月,每个月分别对应于不同的季节。
请根据给定的月份,输出对应的季节。
春:3,4,5
夏:6,7,8
秋:9,10,11
冬:1,2,12
思路:
1.封装键盘录入,获取输入的月份
2.使用if()... else if ()...else if ()... 格式进行判断
3.输出结果
8. 三元运算符(条件运算符)它是可以用if...else...的格式取代的。
但是反之不可以。
if()
{
// 这可以做很多操作,三元运算不能胜任。
}
else
{
// 这也可以做很多操作
}
9.关于switch语句
建议大家
1. 不要省略default,并且放在最后.
2. 每个case执行语句以及default执行语句后面都跟上break.
考试题目,故意不把default放在最后,故意省略break;
特点:
switch语句执行结束条件--遇到break或者执行到语句末尾.
作者:
成佳裕
时间:
2015-6-27 22:40
好厉害 坚持!!!!!!
作者:
j420984
时间:
2015-6-28 13:56
不错,坚持.
作者:
我了个去
时间:
2015-6-30 21:23
好好努力!
作者:
xxpotato
时间:
2015-7-5 15:36
加油,笔记分享的很棒
作者:
jkdong
时间:
2015-7-5 15:55
xxpotato 发表于 2015-7-5 15:36
加油,笔记分享的很棒
谢谢!!!!
作者:
小绿
时间:
2015-7-10 22:28
写的好好哦
作者:
longlong
时间:
2015-7-10 23:37
哇,写的好详细,我觉得前几天的基础,还挺容易的就是环境配置,和循环判断,以及数组的应用,相对与后面面向对象来说更加容易接受,但必须的打好基础,才能更好的进入后期的学习,学习起来也更容易上手
作者:
不完整的旋律
时间:
2015-7-11 21:38
坚持就是胜利
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2