Java随堂小记02

自增、自减运算符

又叫一元运算符

public class Demo1 {
    
    
    public static void main(String[] args) {
    
    
        int a = 1;
        int b = a++;//先赋值后自增
        int c = ++a;//先自增后赋值
        System.out.println(b);
        System.out.println(c);
        
        int d = 2;
        int e = 1;
        int f=d++ + ++e;
        System.out.println(f);
    }
}

运行结果:
在这里插入图片描述

初识Math类

自动补全返回值类型 Ctrl + Alt + V
在Java中,幂运算如:2^3,用一些工具类来操作

public class Demo1 {
    
    
    public static void main(String[] args) {
    
    
        double pow = Math.pow(2,3);
        System.out.println(pow);
    }
}

运行结果:
在这里插入图片描述

逻辑运算符

public class Demo1 {
    
    
        public static void main(String[] args) {
    
    
            boolean a = true;
            boolean b = false;

            System.out.println("a && b:"+(a&&b));
            System.out.println("a || b:"+(a||b));
            System.out.println("!(a && b):"+!(a&&b));

            //短路运算:若前面的为假,则不执行后面的操作
            int c = 4;
            boolean d = (c<3)&&(c++<5);//c<3为false,不执行&&后面的
            System.out.println(d);
            System.out.println(c);
        }
    }

运行结果:
在这里插入图片描述
在这里插入图片描述

位运算符

位运算
A = 0011 1100
B = 0000 1101

    A&B = 0000 1100     全1才为1
    A|B = 0011 1101     全0才为0
    A^B = 0011 0001     异或,相同为0,相异为1
    ~B  = 1111 0010     取反,0变1,1变0

左移<< 右移>>(重要)
2* 8 = 16 2* 2 *2 *2
2<<3 = 16 常用在计算底层得一些运算
0000 0000

    0000 0010       2
           ↑ 从这开始
    0000 0100       4
          ↑ 移一位
    0000 1000       8
         ↑ 再移一位
    0001 0000       16
       ↑ 再移一位
    共移了三位,所以 2<<3 = 16
     */
    System.out.println(2<<3);

运行结果:
在这里插入图片描述

赋值运算符

public class Demo1 {
    
    
    public static void main(String[] args) {
    
    
        int a = 10;
        int b = 20;

        a += b;//a = a + b
        System.out.println(a);
        //字符串连接符
        System.out.println(a+b);
        System.out.println(""+a+b);//String + ...,会转成字符串
        System.out.println(a+b+"");
    }
}

运行结果:
在这里插入图片描述

扫描二维码关注公众号,回复: 12464792 查看本文章

包机制

格式:

package pkg1.pkg2.pkg3...;

一般用公司域名倒置作为包名

package com.baidu.www;

若新建只有一级包
在这里插入图片描述
点击齿轮(显示选择菜单),将压缩空的中间包勾选去掉即可
在这里插入图片描述
在这里插入图片描述

导包

import pkg1.pkg2.(classname|*);

默认导入lang包
*:通配符 表示导入该包下所有的类

JavaDoc生成文档

在这里插入图片描述

参数信息
/** */

@author 作者名
@version 版本号
@ since 指明需要最早使用得jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
加在哪,就是哪里得注释

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打开index.html
在这里插入图片描述

Scanner

  1. 导包
import java.util.Scanner;
  1. 语法
Scanner scanner = new Scanner(System.in);

自动补全:Ctrl+alt+V
记得打了主函数才能用

package www.Dongyi.Scanner;

import java.util.Scanner;

public class Demo2 {
    
    
    public static void main(String[] args) {
    
    
        //接收键盘数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用nextLine方式接收:");

        //判断是否还有输入
        if(scanner.hasNextLine()){
    
    
            //使用next方式接收
            String str = scanner.nextLine();
            System.out.println("用户输入内容:"+str);
        }
        //凡是属于IO流得类如果不关闭会一直占用资源,用完就关
        scanner.close();
    }
}

运行结果:
在这里插入图片描述

next()与nextLine()得区别

在这里插入图片描述
注意不要忘记

Scanner scanner = new Scanner(System.in);

scanner.close();

案例

案例1

package www.Dongyi.Scanner;

import java.util.Scanner;

public class Demo2 {
    
    
    public static void main(String[] args) {
    
    
        Scanner scanner = new Scanner(System.in);
        int i = 0;
        float f = 0.0f;
        System.out.println("请输入整数");
        if(scanner.hasNextInt()){
    
    
            i = scanner.nextInt();
            System.out.println("整数数据:"+i);
        }
        else{
    
    
            System.out.println("输入不是整数!");
        }

        System.out.println("请输入小数");
        if(scanner.hasNextFloat()){
    
    
            f = scanner.nextFloat();
            System.out.println("小数为:"+f);
        }
        else{
    
    
            System.out.println("输入不是小数!");
        }
        scanner.close();//释放内存,养成好习惯
    }
}

这里会有一个小问题
如果输入0.5
在这里插入图片描述
解决方法
重新new一个对象,在最后关闭两个流
在这里插入图片描述
在这里插入图片描述

案例2
根据用户输入的数字求平均数和总和
输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过非数字来结束输出并输出结果

package www.Dongyi.Scanner;

import java.util.Scanner;

public class Demo2 {
    
    
    public static void main(String[] args) {
    
    
        Scanner scanner = new Scanner(System.in);
        //和
        double sum = 0;
        //计算输入了多少个数字
        int m = 0;

        System.out.println("请输入数字,回车确认,当输入非数字,则程序结束");

        //通过循环判断是否还有输入,并在里面对每一次求和统计
        while (scanner.hasNextDouble()){
    
    
            double x = scanner.nextDouble();//新建一个x来接收
            m++;
            sum += x;
            System.out.println("你输入了第"+m+"个数据,当前结果为:"+sum);
        }
        System.out.println(m + "个数的和为" + sum);
        System.out.println(m + "个数的平均值为" + (sum/m));

        scanner.close();
    }
}


猜你喜欢

转载自blog.csdn.net/weixin_48245161/article/details/113735276