初识Java(2)

第二章(二)

1.算术运算符

算术运算符: +,-,*,/,%,++,–.在进行算数运算时使用,其中自增和自减,++a先运算后取值,a++先取值在运算.

/*
  算术运算符
   + - * / % ++ --
   + 加法  字符串连接
   - * / % 只能进行算术运算
 */
    public static void main(String[] args) {
             int a = 10;
             int b = 5;
             char c  = 'd';
             String d = "100";
             String e = "aa";
        System.out.println(a+b);
        System.out.println(a+c);//整数+char(int)
        System.out.println(a+b+d);// 数值+(连接)字符串==字符串
        System.out.println(d+e);//字符串+字符串=字符串
        System.out.println(a-b);
        System.out.println(a-c);
        //++  每++一次 在原来的基础上+1 再赋值
        //单独使用时++在前/后没有区别,在混合运算时++在前先自增后运算,反之则先运算后自增
        int x = 5;
        int y = ++x;
        System.out.println(x);
        System.out.println(y);
    }

2.关系(比较)运算符

/*
==  !=  结果为ture  false
>  <   >=  <=  数值与数值
*/
public static void main(String[] args){
    int a=10;
    int b=5;
    int c=3;
    System.out.println(a==b);
    String x="abc";
    String y="cde";
    System.out.println(x==y);
}

3.逻辑运算符

&—逻辑与 | —逻辑或 !—逻辑非 && —短路与 || —短路或 ^ —逻辑异或

   public static void main(String[] args){
        int a=1;
        int b=2;
        int c=3;
//        & 与运算  都为真才为true  当左边为假的时候  右边会继续进行运算
        System.out.println(a>b&a<c);
        System.out.println(a>b&a>c);
        System.out.println(a<b&++a>c); //a=11
        System.out.println(a);
//        &&与运算(短路与)  都为真才为true  当左边为假的时候 直接结束运算
        System.out.println(a<b&&++a>c);  //a=10
        System.out.println(a);
//        !非运算  取反
        System.out.println(!true);
//        |或运算 有true即为true  都为false才为false
//        ||或运算 (短路或)   当左边为真的时候 直接结束运算
        System.out.println(a>b||++a<c); //a=10
        System.out.println(a);
//        ^异或运算  当左右都为true 结果为false
   }     

作业:不使用第三个变量,交换两个变量的值

public static void main(String[] args) {
        int a=5,b=10;
        a=a+b;
        b=a-b;
        a=a-b;
        System.out.println("a="+a);
        System.out.println("b="+b);
    }

4.赋值运算符

具体包括以下几种: = ,+=,-=,*=,/=

 /*
     赋值运算符 =
     扩展赋值运算符    +=, -=, *=, /=, %=
 */
public static void main(String[] args){
 short a=3;
 a=a+2;//类型转换出现问题
 a+=2;   //自动转换类型
//     分辨==和=
 boolean b=false;
 if(b=true){
    System.out.println(true);
 }else{
    System.out.println(false);
 }
}

5.条件运算符

 /*
条件运算符
 (条件表达式)?表达式1:表达式2
*/
public static void main(String[] args){
 int a = 80;
 String  r = (a>=80)?"及格":"不及格";
 System.out.println(r);
}

6.位运算

日常开发中位运算不是很常用,但是巧妙的使用位运算可以大量减少运行开销,优化算法.

在这里插入图片描述

7.表达式的运算顺序

在这里插入图片描述

8.控制台输入

/*在程序中交互式输入数据,使用Scanner取得一个字符串或一组数字,
使用标准输入串System.in.Scanner的next()方法用以取得用户输入的字符串;
nextInt()将取得的输入字符串转换为整数类型;
同样,nextFloat()转换成浮点型;nextBoolean()转换成布尔型.*/
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        System.out.print("请输入一个数字:");
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        String b = sc.next(); 
    }
}

9.if条件语句

在if后面的括号中写明所需要判断的条件,具体的语句包含在{ }中.

public static void main(String[] args) {
        int a = 80;
        if(a >= 60){
            System.out.println("考试及格!");
        }else{
            System.out.println("考试不及格!");
        }
}

条件运算符与if-else的联系与区别:

条件运算符可简化if-else语句,条件运算符要求必须返回一个结果; if后的代码块可有多个语句.

10.switch语句

多分支选择语句,根据表达式的值,执行某分支的操作或某分支及之后分支的操作.

import java.util.Scanner;

public class Main{
    public static void main(String[] args) {
        
        System.out.println("请输入你的成绩:");
        Scanner scanner = new Scanner(System.in);
        int a=scanner.nextInt();
        int c=a/10;
        switch (c){
        //  switch后的表达式可以为byte,int,short,int,char,枚举类型,也可以使用String类型
            case 9:
                System.out.println("优秀!");break;
            case 8:
                System.out.println("良好!");break;
            case 7:
                System.out.println("中等!");break;
            case 6:
                System.out.println("及格!");break;
            default:
                System.out.println("不及格!");
        }
    }
}

if语句与switch语句的区别:在具体的判断数量不多的情况下,switch语句效率会更高一点.对区间或者结果为boolean类型判断,使用if,if的使用范围更广.

循环语句:在某些情况中,需要对特定的代码反复进行执行,此为循环语句.

11.while&do while语句

while语句表达式为while(表达式){语句}.先判断逻辑表达式的值,若true,能执行后面的语句.

do while语句表达式为do{语句}while(表达式),先执行语句,然后在判断逻辑表达式的值.

public class Main {
    public static void main(String[] args) {
        //  while循环  先判断逻辑表达式 后执行语句
        int a=1;
        /*while(a<5){
            System.out.println(a);
            a++;
        }*/
        //  do-while  先执行语句  再判断
        do{
            System.out.println(a);
            a++;
        }while(a<5);
    }
}

12.for循环

for循环语句表达式为 for(表达式1; 表达式2; 表达式3){ 语句; … ; },表达式用;隔开.

for语句执行过程:先执行表达式1,然后执行表达式2,若表达式2为true,则执行循环语句,接着计算表达式3,再判断表达式2的值;依此重复下去,直到表达式2的值=false.

public class Main {
    public static void main(String[] args) {
        //   for 循环
        /*
        输入三行三列*
        ***
        ***
        ***
        */
        //int i = 0;//int定义在表达式的前面时则为全局变量,在整个main()方法中都是可以使用的,不需要再重新定义
        for (int i = 0; i < 3; i++) {
            //int定义在for循环中的时候则为局部变量,当在for循环以外使用的时候需要重新定义
            for (int j = 0; j <3 ; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

13.break & continue语句

public static void main(String[] args){
//        break 终止
        for (int i = 0; i < 5; i++) {
            if(i==3){
                break;
            }
            System.out.println(i);
        }
//        continue 跳过当次循环
        for (int i = 0; i < 6; i++) {
            if(i==4){
                continue;
            }
            System.out.println(i);
        }
}

循环嵌套:将循环放在另一个循环体中,就是嵌套循环,如while,if,do while,都可为外层嵌套或者内层嵌套.

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值