Java基础语法

1. 运算符:
1. 运算符:
算术:+,-,*,/,%,++,--
%:取模/取余,余数为0即为整除


System.out.println(5%2); //1,商2余1
System.out.println(2%5); //2,商0余2
System.out.println(8%2); //0,商4余0----整除
System.out.println(0%5); //0,商0余0----整除
++/--:自增1/自减1,可在变量前也可在变量后
单独使用时,在前在后都一样
被使用时,在前在后不一样
a++的值为a------------(a--的值为a)
++a的值为a+1--------(--a的值为a-1)
System.out.println(5%2); //1,商2余1
System.out.println(2%5); //2,商0余2
System.out.println(8%2); //0,商4余0----整除
System.out.println(0%5); //0,商0余0----整除
//演示++单独使用
int a=5,b=5;
a++; //相当于a=a+1
++b; //相当于b=b+1
System.out.println(a); //6
System.out.println(b); //6
//演示++被使用
int c=5,d=5;
int e = c++; //将c++的值5赋值给e,同时c自增1变为6
int f = ++d; //将++d的值6赋值给f,同时d自增1变为6
System.out.println(c); //6
System.out.println(d); //6
System.out.println(e); //5
System.out.println(f); //6
//演示--单独使用:
int a=5,b=5;
a--; //相当于a=a-1
--b; //相当于b=b-1
System.out.println(a); //4
System.out.println(b); //4
System.out.println("--------------------");
int c=5,d=5;
int e = c--; //将c--的值5赋值给e,同时c自减1变为4
int f = --d; //将--d的值4赋值给f,同时d自减1变为4
System.out.println(c); //4
System.out.println(d); //4
System.out.println(e); //5
System.out.println(f); //4
关系: > < >= <= == !=
1 ) > ( 大于 ) < ( 小于 )
>= ( 大于或等于 ) <= ( 小于或等于 )
== ( 等于 ) != ( 不等于 )
2 ) 关系运算的结果为 boolean 型,
关系成立则为 true ,关系不成立则为 false
int a=5,b=10,c=5;
boolean b1 = a>b;
System.out.println(b1); //false
System.out.println(c<b); //true
System.out.println(a>=c); //true
System.out.println(a<=b); //true
System.out.println(a==c); //true
System.out.println(a!=c); //false
System.out.println(a%2==0); //false
System.out.println(a+c>b); //false
System.out.println(a++>5); //false------a自增1变为6
System.out.println(a++>5); //true-------a自增1变为7
System.out.println(a); //7
逻辑: && || !
逻辑运算是建立在关系运算的基础之上的 逻辑运算的结果也是 boolean
&& :短路与 ( 并且 ) ,两边都为真则为真,见 false false
1 个条件为 false 时,则发生短路 ( 后面的不执行了 )
int a=5,b=10,c=5;
boolean b1 = b>=a && b<c;
System.out.println(b1); //true&&false=false
System.out.println(b<=c && b>a); //false&&true=false
System.out.println(a==b && c>b); //false&&false=false
System.out.println(b!=c && a<b); //true&&true=true
int age = 40;
System.out.println(age>=18 && age<=50); //年龄在18到50之间
int score = 86;
System.out.println(score>=0 && score<=100); //成绩在0到100之间
//演示短路:
boolean b3 = a>b && c++>2;
System.out.println(b3); //false
System.out.println(c); //5,发生短路了
|| :短路或 ( 或者 ) ,有真则为真,见 true true
1 个条件为 true 时,则发生短路 ( 后面的不执行了 )
int a=5,b=10,c=5;
System.out.println(b>=a || b<c); //true||false=true
System.out.println(b<=c || b>a); //false||true=true
System.out.println(b!=c || a<b); //true||true=true
System.out.println(a==b || b<c); //false||false=false
int score = 90;
System.out.println(score<0 || score>100); //成绩不合法验证(不在0到100之间)
//演示短路:
boolean b3 = a<b || c++>2;
System.out.println(b3); //true
System.out.println(c); //5,发生短路了

! :逻辑非 ( 取反 ) ,非真则假,非假则真
int a=5,b=10,c=5;
boolean b2 = !(a<b);
System.out.println(b2); //!true=false
System.out.println(!(a>b)); //!false=true
赋值: = += -= *= /= %=
简单赋值运算符: =
扩展赋值运算符: +=,-=,*=,/=,%=
注意 : 扩展赋值运算符自带强转功能
int a = 5;
a += 10; //相当于a=(int)(a+10)
System.out.println(a); //15
a *= 2; //相当于a=(int)(a*2)
System.out.println(a); //30
a /= 6; //相当于a=(int)(a/6)
System.out.println(a); //5
//小面试题:
short s = 5;
//s = s+10; //编译错误,需强转,改为:s=(short)(s+10);
s += 10; //相当于s=(short)(s+10);
字符串连接: +
若两边为数字,则做加法运算
若两边 ( 任意边 ) 出现了字符串,则做字符串连接
int age = 23;
System.out.println("age="); //age=
System.out.println(age); //23
System.out.println("age="+age); //age=23
System.out.println("我今年"+age+"岁了"); //我今年23岁了
String name = "szy"; //声明字符串型变量name,并赋值为szy
System.out.println("大家好,我叫"+name); //大家好,我叫szy
System.out.println("大家好,我叫"+name+",今年"+age+"岁了"); //大家好,我叫szy,
今年23岁
任何类型的数据与字符串连接,结果都会变为字符串型
System.out.println(10+20+""+30); //3030---------String
System.out.println(""+10+20+30); //102030-------String
System.out.println(10+20+30+""); //60-----------String
条件: boolean ?数 1 :数 2
语法:
boolean? 1: 2
执行过程:
整个条件运算是有值的,它的值要么是 ? 号后的数 1 ,要么是 : 号后的数 2
计算 boolean 的值 :
若为 true ,则整个表达式的值为 ? 号后的数 1
若为 false ,则整个表达式的值为 : 号后的数 2
int num = 5;
int flag = num>0?1:-1;
System.out.println(flag); //1
int a=8,b=5;
int max = a>b?a:b;
System.out.println("max="+max); //max=8

2. 分支结构() :基于条件执行  
  1. if结构:1条路
    1 ) 语法 :
    if ( boolean ){
    语句块 -------------- 基于条件执行的语句
    }
    2 ) 执行过程 :
    判断 boolean 的值 :
    若为 true ,则执行语句块 ( 整个结束 )
    若为 false ,则直接结束
    //1)满500打8折:
    double price = 300.0; //消费金额 带数(600.0,300.0)
    if(price>=500){ //满500
    price *= 0.8; //打8折
    }
    System.out.println("最终结算金额为:"+price);
    //2)判断成绩是否合法:
    double score = 555; //成绩 带数(95.5,-5,555)
    if(score>=0 && score<=100){
    System.out.println(score+"是合法成绩");
    }
    System.out.println("继续执行...");
  2. if...else结构:2条路
    1 ) 语法 :
    if ( boolean ){
    语句块 1
    } else {
    语句块 2
    }
    2 ) 执行过程 :
    判断 boolean 的值 :
    若为 true ,则执行语句块 1 ( 整个结束 )
    若为 false ,则执行语句块 2 ( 整个结束 )
    3 ) 说明 :
    语句块 1 和语句块 2 ,必走其中之一 ------------- 2 1
    //1)满500打8折,不满500打9折:
    double price = 300.0; //带数(600.0,300.0)
    if(price>=500){ //满
    price*=0.8;
    }else{ //不满
    price*=0.9;
    }
    System.out.println("最终结算金额为:"+price);
    //2)判断成绩合法还是不合法:
    double score = 95; //带数(95,-5,555)
    if(score>=0 && score<=100){
    System.out.println(score+"是合法成绩");
    }else{
    System.out.println(score+"是不合法成绩");
    }

  3. if...else if结构:多条路
    1 ) 语法 :
    if ( boolean - 1 ){
    语句块 1 补充:
    1. 任何复杂的程序逻辑都可以通过三种结构来实现:
    顺序结构:从上往下逐行执行,每句必走
    分支结构:有条件的执行某语句,并非每句必走
    循环结构:明天讲
    2. 明日单词:
    } else if ( boolean - 2 ){
    语句块 2
    } else if ( boolean - 3 ){
    语句块 3
    } else {
    语句块 4
    }
    2 ) 执行过程 :
    判断 boolean - 1 ,若为 true 则执行语句块 1 ( 结束 ) ,若为 false
    再判断 boolean - 2 ,若为 true 则执行语句块 2 ( 结束 ) ,若为 false
    再判断 boolean - 3 ,若为 true 则执行语句块 3 ( 结束 ) ,若为 false 则执行语句块 4 ( 结束 )
    3 ) 说明 :
    语句块 1 / 2 / 3 / 4 ,必走其中之一 -------- 多选一
    //1)满2000打5折,满1000不满2000打7折,满500不满1000打8折,不满500打9折:
    double price = 6000.0; //带数(6000.0,1000.0,600.0,300.0)
    if(price>=2000){
    price*=0.5;
    }else if(price>=1000){
    price*=0.7;
    }else if(price>=500){
    price*=0.8;
    }else{
    price*=0.9;
    }
    System.out.println("最终结算金额为:"+price);

 

  • 16
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值