码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础

时间:2020-06-11 10:27:53      阅读:63      评论:0      收藏:0      [点我收藏+]

标签:java运算符   ict   参数   OLE   UNC   转化   ota   value   type   

Java基础

注释

  • 注释不会被执行,是给自己或者别人看的
  • 书写注释是一个非常好的习惯
  • Java中注解有三种
  • 单行注解 //
  • 多行注解 /* */
  • 文档注解 /** */

标识符

  • 关键字

    abstract assert boolean break byte
    case catch char class const
    continue default do double else
    enum extends final finally float
    for goto if implements import
    instanceof int interface long native
    new package private protected public
    return strictfp short static super
    switch synchronized this throw throws
    transient try void volatile while
    
  • Java所有组成部分都需要名字。类名、变量一级方法名都成为标识符

标识符注意点

  • 所有标识符以 A-Z 或者 a-z,$ ,或者 _ 开始
  • 首字符后可以是 A-Z 或者 a-z,$ , _ ,或者数字组合
  • 不能使用关键字作为变量名或方法名
  • 标识符是大小敏感的
  • 可以使用中文命名或者拼音但不建议

数据类型

  • 强类型语言
    • 要求变量使用严格符合规定 所有变量都必须先定义后使用
  • 弱类型语言
  • Java的数据类型
    • 基本类型(primitive type)
    • 引用类型(reference type)

技术图片

        //八大基本数据类型
        //整数
        int num1 = 10;
        byte num2 = 20;
        short num3 = 30;
        long num4 = 30L;//Long类型要再数字后加L
        //浮点数
        float num5 = 50.1F;//Float类型要再数字后加F
        double num = 3.141592653589793238462643;
        //字符
        char name = ‘A‘;
        //字符串,String不是关键字
        //String namea = "neal";

        //布尔值
        boolean flag = true;
        //boolean flag = false;



        //整数拓展:进制 二进制0b 十进制 八进制0 十六进制0x
        int i = 10;
        int i2 = 010;//八进制0
        int i3 = 0x10;//十六进制0x 0~9 A~F
        System.out.println(i);
        System.out.println(i2);
        System.out.println(i3);

        //浮点数拓展 银行业务
        //BigDecimal 数学工具类
        //float 有限 离散 舍入误差 大约数 接近但不等于
        //double
        //最好完全使用浮点数进行比较

        float f = 0.1f;//0.1
        double d = 1.0 / 10;//0.1
        System.out.println(f == d);

        float d1 = 213213123123f;
        float d2 = d1 + 1;
        System.out.println(d1 == d2);

        //字符类拓展

        char c1 = ‘a‘;
        char c2 = ‘中‘;
        System.out.println(c1);
        System.out.println((int) c1);//强制转换
        System.out.println(c2);
        System.out.println((int) c2);
        //所以的字符本质还是数字
        //编码 Unicode 表 (97=a) 2字节 65536 excel 2 16 = 65536
        //U0000 UFFFF
        char c3 = ‘\u0061‘;
        System.out.println(c3);
        //转义字符
        //\t 制表符
        //\n 换行
        //...
        System.out.println("Hello\tworld");

        String sa = new String("hello world");
        String sb = new String("hello world");
        System.out.println(sa == sb);

        String sc = "hello world";
        String sd = "hello world";
        System.out.println(sc == sd);
        //对象 从内存分析

        //布尔值扩展
        boolean flag = true;
        if (flag = true) {
        } //新手
        if (flag) {
        }//老手
        //less is more 代码要精简易读

字节

  • 位(bit):是计算机内部数据存储的最小单位,11001100是一个八位二进制数。

  • 字节(byte)是计算机中数据处理的基本单位,习惯上用大写B来表示。

  • 1B(byte,字节)= 8bit(位)

  • 字符:是计算机中使用的字母、数字、字和符号

  • 1bit表示1位

  • 1byte表示亿字节 1B = 8b

  • 1024b = 1KB

  • 1024KB = 1M

  • 1024M = 1G

类型转换

  • 由于Java是强类型语言,所有要进行有些运算的时候需要类型转换

    技术图片

  • 运算中不同类型的数据先转化位同一类型,然后进项运算。

  • 强制类型转换

  • 自动类型转换

        int i = 128;
        byte b = (byte) i;//内存溢出
        double d = i;
        //强制类型转换 (类型)变量名 高->低
        //自动转换 低->高
        System.out.println(i);
        System.out.println(b);
        System.out.println(d);
        /*注意点:
         * 1.不能对布尔值进行转换
         * 2.不能吧对象类型转换为不相干的类型
         * 3.高容量转换为低容量的时候,强制转换
         * 4.转换的时候可能存在内存溢出或精度问题
         */
        System.out.println((int) 23.7);
        System.out.println((int) -45.89f);

        char c = ‘a‘;
        int e = c + 1;
        System.out.println(e);
        System.out.println((char) e);
        //操作比较大的数时,注意溢出问题。
        //JDK7新特性,数字之间可以用下划线分割
        int moeny = 10_0000_0000;
        int years = 20;
        int total = moeny * years;//-1474836480 计算溢出
        long total2 = moeny * years;//默认是int,转换前就存在问题
        long total3 = moeny * (long) years;//先吧一个数转换为Long
        System.out.println(total3);
        //L l 使用大写区分1和l

变量

  • 变量是可以变化的量
  • Java是一种强类型语言,变量必须声明其类型
  • Java变量是最基本的存储单元,其包括变量名,变量类型和作用域

type varName [=value] [{,varName[=value]}]

//数据类型 变量名 = 值;可以使用都好累隔开声明多个同类型变量。

  • 注意:
    • 每个变量都有类型,类型可以是基本类型也可以是引用类型
    • 变量名必须是合法的标识符。
    • 变量声明是一条玩着的语句,因此每一个声明都必须以分号结束

变量的作用域

  • 类变量
  • 实例变量
  • 局部变量
    public class Vriable {
        static int allClick = 0;//类变量
        String str = "hello world";//实例变量

        public void method() {
            int i = 0;//局部变量
        }
    }

常量

  • 常量(constant):初始化(initialize)后不能再该变值!不会变动的值。

  • 所谓常量可以理解出一种特殊的变量,他的值被设定后,在程序运行过程中不允许被改变。

    final 常量=值;
    final double PI=3.14;
    
  • 常量名一半使用大写字符。

变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()

运算符

  • Java运算符
    • 算数运算符:+,-,*,/,%,++.--
    • 赋值运算符:=
    • 关系运算符:>,<,>=,<=,==,!=,instanceof
    • 逻辑运算符:&&,||,!
    • 位运算符:&,|,^,~,>>,<<,>>>
    • 条件运算符:?,:
    • 扩展复制运算符:+=,-=,*=,/=

包机制

  • 为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。

  • 包语句语法格式为

    package pkg1[.pkg2[.pakkg3...]]
    
  • 一般利用公司域名倒置作为包名;

  • 为了能够使用某一个包成员,我们需要在Java程序中明确导入该包。使用import语句可完成此功能

    import package1[.package2...].(classname|*);
    

JavaDoc

  • javadoc命令是用来生成API文档的
  • 参数信息
    • @author 作者名
    • @version 版本号
    • @since 最早使用的jdk版本
    • @param 参数名
    • @return 返回值
    • @throws 异常抛出
javadoc -encoding UTF-8 -charset UTF-8

Java基础

标签:java运算符   ict   参数   OLE   UNC   转化   ota   value   type   

原文地址:https://www.cnblogs.com/zeroneal/p/13091639.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!