我是靠谱客的博主 搞怪过客,这篇文章主要介绍Java基础篇运算符与if判断,现在分享给大家,希望可以做个参考。

这里是昨天未讲完的内容!接上一天!
9.Java的运算符
算术运算符:+ - * / % ++ --
/ 除号右边不能为0
++自增
i++-->i=i+1;
--自减
i--;-->i=i-1;

++i/--i;参与运算时 先自增 再运算

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Demo_1 { public static void main(String[] arg) { int a = 1; int b = 2; //先赋值 再运算 int aplus = a++; int bplus = b--; System.out.println("aplus "+aplus); System.out.println("bplus "+bplus); System.out.println("a---"+a); System.out.println("b---"+b); //先运算 再赋值 int aa = ++a; int bb = --b; System.out.println("a---"+a); System.out.println("b---"+b); System.out.println("aplus "+aa); System.out.println("bplus "+bb); } }

赋值运算符: = += -= *= /= %=
注意:
short b = 2;
b = b+3;//这是两次运算 第一次相加 第二次赋值 不会自动转型
b+=3;//一次运算 自动转换类型
关系运算符:> < <= >= == !=
注意:
关系运算符结果只有 true/flase
逻辑运算符: ! & | ^ && ||


true & true = true 
true & false = false
false & ture = false 
false  & flase = false
只要两边的Boolean表达式结果 有一个为false 结果就是false
两边都为true 结果为true


true | true = true 
true | false = false
false | ture = false 
false  | flase = false
两边只要有一个为true 结果就是true
只有两边为false 结果才是false


true ^ true = false 
true ^ false = true
false ^ ture = true 
false  ^ flase = false
两边相同 结果为false
两边不同 结果为true


&& &的区别
对于:&   -- >  不管怎样,都会执行"&"符号左右两边的程序
按位与:a&b是把ab都转换成二进制数然后再进行与的运算;
对于:&& -- >  只有当符号"&&"左边程序为真(true)后,才会执行符号"&&"右边的程序。


||  |的区别
|两边都要运算
|| 当左边为true 右边就不算了

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import java.util.Scanner; class Demo_3 { public static void main(String[] args) { Test1(); } public static void Test1() { Scanner sc = new Scanner(System.in); int age = sc.nextInt(); System.out.println(age>18 && age<60); } public static void Test2() { Scanner sc = new Scanner(System.in); int age = sc.nextInt(); System.out.println(age<12 || age>60); } public static void Test3() { Scanner sc = new Scanner(System.in); System.out.println("A:输入等于或大于90 但小于100的数"); int a=sc.nextInt(); System.out.println(a>=90 && a<100); System.out.println("B:输入不是字符q 也不是字符k的字符"); String b = sc.next(); System.out.println(b.charAt(0)!='q' && b.charAt(0)!='k'); System.out.println("C:输入1~9 但不包括5 的数"); int c = sc.nextInt(); System.out.println((c>1 && c<9) && c!=5); System.out.println("D:输入一个不是1~9的数字"); int d = sc.nextInt(); System.out.println(d<1 && d>9); } public static void Tedt4() { Scanner sc = new Scanner(System.in); int year = sc.nextInt(); System.out.println(((year % 4 == 0) && year % 100 == 0) && year % 400 == 0); } public static void Test5() { Scanner sc = new Scanner(System.in); String s = sc.next(); char c = s.charAt(0); System.out.println(c>65 && c<90); } }

位运算符:   & | ^ ~ >> << >>>


<<左移运算符
移动n位就是乘以2的n次幂 右侧补(最高位是什么补什么)
>>右移运算符 带符号右移
移动n位就是除以2的n次幂 左侧补
>>>无符号右移运算符
无论最高位是什么 右移后都补0
& 按位与
0--> false
1--> true
6 & 3 = 2

110
    &  011
    ------
       010 -->2
| 按位或
6 | 5 = 7


110
     | 101
     -----
       111 -->7
^ 按位异或
相同为false 0 不同为true 1
一个数异或一个数两次,结果不变

6 ^ 5 = 3

110
     ^ 101
     -----
       011 -->3
~ 按位取反
0-->1 1-->0
小知识:两个整数交换值的三种方法
1.使用第三方变量
2.int a,int b;
 a=a+b;
 b=a-b;
 a=a-b;
3.int n=3,m=6;
 n = n^m;
 m = n^m;
 n = n^m;
字符串链接符号: +
字符串数据和任何数据使用 + 都是你相连接的意思 最后都会变成字符串
System.out.println("6+6"+6+6);

三元运算符/三目运算符
格式: 关系表达式 ? 表达式1 : 表达式2
boolean

关系表达式结果为true 则判断表达式1 false则判断表达式2

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Demo_4 { public static void main(String[] args) { //1.用三目运算符 比较两个整数是否相等 int a = 10; int b = 20; boolean b1 = (a==b) ? true : false; System.out.println(b1); //2.获取三个整数中的最大值 Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); int temp = (a>b)?a:b; int max = (temp>c)?temp:c; System.out.println(max); } }


10.运算符的优先级和转义字符
赋值运算符 从左往右看


转义字符:用在字符串中 用来定制字符串的输出格式的特殊符号
t 一个退格键
n 换行 (linux unix)
r 回车(在windows下 换行 rn)
' 单引号
" 双引号
\
String s="哥们儿,rn最近还好吗?t有没有看rn"星球大战"?'男'猪脚\叫什么来着?";


程序流程控制,结构化程序有三种结构
1.顺序结构:从上向下 一行行代码执行
2.分支结构(选择结构)
3.循环结构
二,分支语句
为什么要用分支?
当程序面临选择的时候,每一种选择对应一种操作(结果)

1.if语句
1.1
结构:if(表达式) --->关系表达式 和 逻辑表达式组成
    {
       执行语句;
    }
执行流程:
a.当程序执行到if的时候 先去判断表达式分的结果 true还是false
b.如果表达式的值是true 就执行{}里的语句 一条if语句结束
c.如果表达式的值是false 就不执行{}里的语句
2.if...else语句
2.1
结构:if(表达式) --->关系表达式 和 逻辑表达式组成
    {
       执行语句;
    }
    else
    {
执行语句;
    }
执行流程:
a.当程序执行到if的时候 先去判断表达式分的结果 true还是false
b.如果表达式的值是true 就执行{}里的语句 一条if语句结束
c.如果表达式的值是false 就执行else{}里的语句
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import java.util.Scanner; class Demo_6 { public static void main(String[] args) { Scanner sc= new Scanner(System.in); /*int a=sc.nextInt(); int b= sc.nextInt(); if(a>b) { System.out.println(a+" "+b); } if(b>a) { System.out.println(b+""+a); }*/ /*int c= sc.nextInt(); if(c%2==0) { System.out.println(c+"是偶数"); } else { System.out.println(c+"是奇数"); }*/ String s= sc.next(); char a=s.charAt(0); if(a=>65&&a<=90) { a +=32; } System.out.println(a); //System.out.println("哥们儿,rn最近还好吗?t有没有看rn"星球大战"?'男'猪脚\叫什么来着?"); } }

家庭作业!!!

1.输入1~7显示对应的日期

2.判断质数

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import java.util.Scanner; import java.lang.Math; class Homework { public static void main(String[] args) { homework2(); } public static void homework1() { Scanner sc = new Scanner(System.in); int a= sc.nextInt(); if(a==1) { System.out.println("今天是星期一"); } if(a==2) { System.out.println("今天是星期二"); } if(a==3) { System.out.println("今天是星期三"); } if(a==4) { System.out.println("今天是星期四"); } if(a==5) { System.out.println("今天是星期五"); } if(a==6) { System.out.println("今天是星期六"); } if(a==7) { System.out.println("今天是星期天"); } } public static void homework2() { Scanner sc= new Scanner(System.in); int a=sc.nextInt(); int k=(int)Math.sqrt(a); int i; for(i=2;i<=k;i++) { if(a%i==0) break; } if(i>k) System.out.println("这个数是质数"); else System.out.println("这个数不是质数"); } }
今天依旧手残!70字/秒!

最后

以上就是搞怪过客最近收集整理的关于Java基础篇运算符与if判断的全部内容,更多相关Java基础篇运算符与if判断内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(68)

评论列表共有 0 条评论

立即
投稿
返回
顶部