首页 > 编程语言 > 详细

java学习3.8

时间:2021-03-08 22:53:45      阅读:53      评论:0      收藏:0      [点我收藏+]

一. 运算符

  • 算数运算符
    • +,-,*,/,%,==,--
  • 赋值运算符
    • =
  • 关系运算符
    • >,<,>=,<=,!=,indexof
  • 逻辑运算符
    • &&, ||, !
  • 位运算符
    • &, |, ^, ~, >>, <<, >>>
  • 条件运算符(三元运算符)
    • ? :
  • 扩展赋值运算符
    • +=, -=, *=, /=

算术运算符

package com.liu.operator;

public class Demo01 {
    public static void main(String[] args) {
        // 二元运算符
        // Ctrl + D: 复制当前行到下一行
        int a = 10;
        int b = 20;
        int c = 25;
        int d = 25;

        System.out.println(a + b);
        System.out.println(a - c);
        System.out.println(a * d);
        System.out.println(a / (double)b);  // 变成小数后,有问题,int类型没有小数

        /**
         * 在运算过程中,结果类型取所占位数(字节)大的
         *      通常都是long/double/int
         */
        long l1 = 123456789L;
        int  i1 = 1235;
        short s = 123;
        byte b1 = 123;
        System.out.println(l1 + i1);
        System.out.println(s + i1);
        System.out.println(b1 + i1);
        System.out.println(l1 + s);
    }
}

关系运算符

package com.liu.operator;

public class Demo02 {
    public static void main(String[] args) {
        /**
         * 关系运算符
         *   1. 关系运算符返回的结果都是布尔值,对或者错
         *
         *  模运算(取余)
         *    1. 整除所剩余的数
         */
        // 关系运算符
        System.out.println(1 > 2);
        System.out.println(123 > 2);
        System.out.println(1 >= 2);
        System.out.println(1 <= 2);

        // 模运算
        System.out.println(105 % 4); // 1
        System.out.println(14 % 4);  // 2
    }
}

自增自减

package com.liu.operator;

public class Demo03 {
    public static void main(String[] args) {
        /**
         * 自增 ++
         *   1. 前置++ 是先计算,后赋值
         *   2. 后置++ 是先赋值,后运算
         * 自减 --
         *    1. 前置-- 是先计算,后赋值
         *    2. 后置-- 是先赋值,后运算
         */
        int a = 3;

        int b = a++;
        int c = ++a;
        System.out.println(a);
        System.out.println(++b);
        System.out.println(c);

        // 幂运算
        // Math类,是一个数学工具类
        double be = Math.pow(3,3);
        System.out.println(be);
    }
}

逻辑运算符

package com.liu.operator;

public class Demo04 {
    public static void main(String[] args) {
        /**
         * 逻辑运算符
         *   1. 逻辑与运算
         *      条件都为真,则结果为真,任意为假,则返回false
         *
         *   2. 逻辑或运算
         *      条件都为假,则结果为假,任意为真,则返回true
         *
         *   3. 非
         *      取反操作
         *
         *   短路运算
         *      在第一个条件不符合条件时,就不会看后面的条件
         */
        System.out.println(1>2 && 2>1);
        System.out.println(1>2 || 2>1);
        System.out.println(!(1>2 || 2>1));
    }
}

位运算符

package com.liu.operator;

public class Demo05 {
    public static void main(String[] args) {
        // 位运算符 每一位进行比较
        /*
            计算机是八位二进制
            A = 0011 1100
            B = 0000 1101

            A&B A与B对位为1则为1,不然为0
                0000 1100
            A|B A或B对位为1则为1,不然为0
                0011 1101
            A^B A和B对位相同为0,不然为1
                0011 0001
            ~B  将B取反
                1111 0010

             怎么计算2*8最快
             2*8 = 16
             <<左移   *2
             >>右移   /2

             0000 0000  0
             0000 0001  1
             0000 0010  2
             0000 0011  3
             0000 0100  4
             0000 0101  5
             0000 0110  6
             0000 0111  7
             0000 1000  8
             0001 0000  16
        */
        System.out.println(2<<3);

    }
}

扩展运算符

package com.liu.operator;

public class Demo06 {
    public static void main(String[] args) {
        // 扩展运算符
        int a = 10;
        int b = 20;
        a += b;
        System.out.println(a);

        // 三元运算符
        // x ? y : z

        // 字符串拼接符 +
        System.out.println("" + a + b);
        System.out.println(a + b + "");

    }
}

二.用户交互Scanner

Demo01

package com.liu.scanner;

import java.util.Scanner;

public class Demo01 {
    public static void main(String[] args) {
        // 创建实例
        Scanner scanner = new Scanner(System.in);

        System.out.println("使用next方法接收");

        // 判断是否还有下一个
        if (scanner.hasNext()) {
            System.out.println(scanner.next());
        }
        // 关闭扫描器,任何IO类,使用过后都需要关闭,节约内存
        scanner.close();
    }
}

Demo02

package com.liu.scanner;

import java.util.Scanner;

public class Demo02 {
    public static void main(String[] args) {
        // 创建实例
        Scanner scanner = new Scanner(System.in);

        System.out.println("使用nextLine接收");
        if (scanner.hasNextLine()) {
            System.out.println(scanner.nextLine());;
        }
        // 关闭扫描器,任何IO类,使用过后都需要关闭,节约内存
        scanner.close();
    }
}

Demo03

package com.liu.scanner;

import java.util.Scanner;

/**
 * scanner是扫描器,可以通过键盘获取用户输入的数据
 * 它拥有两种获取数据的方式
 *   1. next() 取值范围是从开头到第一个空格,会将空格作为分隔隔断符,用得少
 *   2. nextLine()  取值范围是所有输入的内容,通常需要使用也是用这个
 *
 * scanner常用两种判断方式
 *   1. hasNext()  判断是否还有下一个字
 *   2. hasNextLine()   判断是否还有下一行
 */
public class Demo03 {
    public static void main(String[] args) {
        // 创建实例
        Scanner scanner = new Scanner(System.in);

        System.out.println("使用nextLine接收");
        System.out.println(scanner.nextLine());
        // 关闭扫描器,任何IO类,使用过后都需要关闭,节约内存
        scanner.close();
    }
}

Demo04

package com.liu.scanner;

import java.util.Scanner;

public class Demo04 {
    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("你输入的不是浮点数类型");
        }
        // 关闭扫描器,任何IO类,使用过后都需要关闭,节约内存
        scanner.close();
    }
}

Demo05

package com.liu.scanner;

import java.util.Scanner;

public class Demo05 {
    public static void main(String[] args) {
        // 需求: 输入多个数字,并计算起综合和平均数,没输入一个数字使用回车确认,通过输入非数字来进行结束,并输入其结果
        Scanner scanner = new Scanner(System.in);

        // 和
        double sum = 0;
        // 计算输入数量
        int m = 0;

        // 通过while循环来进行判断书否还有输出,并进行求和运算
        while (scanner.hasNextDouble()) {
            sum += scanner.nextDouble();
            m++;
            System.out.println("此时输入了" + m + "个数,和是" + sum );
        }
        // 结束后输出总结果
        System.out.println("数量" + m + "个,总和" + sum);
    }
}

三. Java包命名规范

项目分层命名

一般可以分为两种情况进行命名:

 A、以功能模块来分层定义
     
 比如,现有两个功能模块User、Menu

 com.xxx.user.action        com.xxx.menu.action

 com.xxx.user.service      com.xxx.menu.service

 com.xxx.user.dao            com.xxx.user.dao

 com.xxx.user.controller   com.xxx.user.controller
B、以逻辑模块来划分

  com.xxx.action  UserAction  MenuAction

  com.xxx.service  UserService  MenuService

四. JavaDoc生成文档

4.1 CMD生成Doc文档

1. 在对应资源管理器的地址栏输入CMD开启命令行
2. 使用javadoc指令
  	1. javadoc -endoding UTF-8 -charset UTF-8 文件名.java

4.2 使用IDEA生成Doc文档

  1. 打开 idea,点击 Tools-> Generate JavaDoc,这样会打开生成 javadoc 文档的配置页面。
  2. 进行配置:技术分享图片

对应参数

-encoding utf-8 -charset utf-8 使用unicode编码集

  1. 在output中选择输出路径,选择输出即可

java官方API文档

https://tool.oschina.net/apidocs/apidoc?api=jdk-zh

官方中文API文档

java学习3.8

原文:https://www.cnblogs.com/studyHistory/p/14502698.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!