【新手】Java学习笔记Day1

已经是学习Java的第四天
(首先特别特别希望有同样刚开始学习或者对Java感兴趣的小伙伴进行留言提问然后我们共同进步好吗??
好的!!)

今天学习了有关 运算符 和流程控制中的 条件语句 没有遇到什么无法理解的内容 但有一些知识点确实值得记录 具体展开如下文所示
自增自减运算符:
a++ 使用后再自加1
++a 自加1后再使用

一个典型例题:
int a = 1;
int b = (a++) + (++a);
请问最终b的值为多少?

具体思考过程可以用以下的表格表示
旧值: 1 2
a++ ++a
新值: 2 3
使用值:1 3
所以最后的答案为 4

其次就是逻辑运算:
^异或:相同为0,不同为1
&与:同1为1,其他为0
|或:有1为1,同0为0
~取反:0变1,1变0

然后就是用位运算符在实际运算中的应用:
也就是将十进制数转为二进制数,右对齐并进行位逻辑运算,目前还不太了解这么做的意义是啥

位移运算符:

右移运算符:相当于除以2的n次幂
<<左移运算符:相当于乘2的n次幂

无符号右移:相当于除以2的n次幂
与>>>的区别在于无符号右移进行补码,最左直接补0,而不用考虑正负
还不太了解这个的实际运用,在今后进一步的学习之后,会回来添加博客内容

复合赋值运算符:
这类运算符挺好的,因为它们自带强制转换过程,举例如下:
byte a = 1;
a = a + 1;
这段程序代码会提示错误,因为Java默认整数为int型,所以 1 就是个int型 整数,高精度的 1 赋值给低精度byte 需要进行强制转换,程序中明显没有
但是使用如下代码就不存在这种问题
byte a = 1;
a += 1;
输出结果 a 的值为 2;
但是在遇到比较复杂的运算过程,复合赋值运算符就显得太繁琐了!

三元运算符:
这个与if…else条件语句 相关
使用格式为:条件式?值1:值2
此处条件式结果为布尔型,true则输出 值1,false则输出 值2
相当于:
if(条件式)
值1
else
值2

然后就是程序结构
分为三种分别是:顺序结构、选择结构、循环结构
顺序结构就是依次进行
选择结构包括if if…else if…else…if 嵌套使用 switch
需要注意的是如果进行嵌套if,最内层的if else不用花括号
switch的每一句执行后都别忘了加break不然就会进行“贯穿”,但有时也会故意进行”贯穿”,比如在不同范围但是产生一样的结果,就可以利用这一特点

还学了一下Scanner的用法
首先调用一下java.util.Scanner;
过程中这一句用来进行键盘录入:Scanner scan = new Scanner(System.in);
然后需要定义一个变量,并把scan值赋给这个变量

有时利用好逻辑语句比用if else简单,当然这只是因为我遇到了一题是这样的,这句话的可靠性还需要在我进行深入学习之后再定夺

JDK1.7以上版本switch()中的参数可以是字符串啦(废话一句)

坚持学习就好,不用追求速度,把学习Java当作一种游戏的过程,你就会发现自己乐在其中~
2018.7.25 22:32
明天要开长途回老家,头天拿本次日上高速,第三天开几百公里回老家就很强

PS:希望有小白可以在我的博客下进行提问,我也可以查漏补缺,特别希望被提问呀
也希望老师傅们能发现我博客中的错误或是不专业的的描述,并进行指正,十分感谢

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值