• 第三章.数据类型和运算符


    Java语言是一门强类型语言,强类型包含两方面含义:

      1.所有变量必须先声明、后使用

      2.指定类型的变量只能接受类型与之匹配的值。

    基本数据类型大致分为两类:

      1.数值类型:整形,字符型,浮点型。

      2.布尔类型

      所有数值类型之间可以进行类型转换,这种类型转换包括

        1.自动类型转换

        2.强制类型转换

    运算符:

      1.算术运算符

      2.位运算符

      3.比较运算符

      4.逻辑运算符

    注释:

      为程序添加注释,用以说明某段代码的作用,或者说明某个类的用途、某个方法的功能,以及给方法的参数或返回值的数据类型及意义。

    为什么要添加程序注释?

      1.永远不要过于相信自己的理解能力!

      2.可读性第一,效率第二!

      3.代码即文档!

    Java语言的注释:

      1.单行注释 //

      2.多行注释 /**/

      3.文档注释:/**  */。

        文档注释用于生成API文档,而API文档主要用于说明类、方法、成员变量的功能,因此javadoc工具默认只处理文档源文件在public或protected修饰的类、接口、方法、成员变量、构造器和内部类之前的注释,忽略其他地方的文档注释。API文档类似于使用说明书。

    javadoc命令:javadoc Java源文件|包

      javadoc *.java//当前文件夹下所有后缀名为java的文件都生成API文档。

    javadoc标记:

      1.@author:指定Java程序的作者

      2.@version:指定源文件的版本

      3.@deprecated:不推荐使用的方法

      4.@param:方法的参数说明信息

      5.@return:方法的返回值说明

      6.@see:“参见”,用于指定交叉参考的内容

      7.@exception:抛出异常的类型

      8.@throws:抛出的异常,和@exception同义。

      这些标记使用有位置限制:

        可以出现在类或者接口文档注释中的有@see、@deprecated、@author、@version

        可以出现在方法或构造器文档注释中的有@see、@deprecated、@param、@return、@throws、@exception

        可以出现在成员变量的文档注释中的有@see、@deprecated

    javadoc工具默认不会提取@author和@version两个标记信息。

    标识符和关键字:

    分隔符

    ; {} [] () 空格 . 

    Java语句可以跨行书写,但是一个字符串、变量名不能跨行。

    Java语法允许一行书写多个语句,但从程序可读性考虑,应该避免一行书写多个语句。

    标识符规则:

      1.可以由字母、数字、下划线(_)和美元符($)组成,其中数字不能开头

      2.不能是Java关键字和保留字

      3.不能包含空格

      4.只能包含美元符($),不能包含其他特殊符号。

    Java关键字:一些具有特殊用途的单词被称为关键字(keyword)。

      java所有关键字都是小写,TRUE、FALSE、NULL都不是Java关键字。

      abstract,assert,boolean,break,byte,case,catch,char,class,const,continue,default,do,double,else,enum,extends,final,finally,float

      for,if,goto,implements,import,instanceof,int,interface,long,native,new,package,private,protected,public,return,short,static,strictfp,super

      switch,synchronized,this,throw,throws,transient,try,void,volatile,while

      50个关键字,enum是Java 5新增的关键字,goto和const是保留字(reserved Word),Java还提供了三个特殊的直接量(literal):true,false,null:标识符也不能使用 。

    基本类型(Primitive Type)和引用类型(Reference Type):

      基本类型包括:boolean类型和数值类型

        数值类型包括:整数类型和浮点类型

          整数类型包括:byte,short,int,long,char

          浮点类型包括:float,double

      引用类型包括:类,接口,数组类型,null类型。引用类型变量实际就是一个指针。

        null类型:就是null值的类型。null可以转换为任何引用类型。null只能被转换成引用类型,不能转换成基本类型,因此不要把null值赋值给基本数据类型。

    整型:

      1.byte:一个字节,8位表示范围:-128~127

      2.short:两个字节,16位表示范围:-32768~32767

      3.int:四个字节,32位表示范围:-2147483648~2147483647

      4.long:八个字节,64位表示范围:负2的63次方 ~ 2的63次方减一

      注意:使用一个超出int类型表数范围,Java不会自动把这个整数值当成long类型处理,要在这个整数值后面加上L后缀:

        long bigValue = 999999999999999L 正确

        long bigValue = 999999999999999   错误

    Java整数值有4中表示方式:十进制、二进制、八进制、十六进制:

      二进制:0B或0b开头

      八进制:0开头

      十六进制:0X或0x开头

    字符型:

      表示单个字符,字符型值必须使用单引号(')括起来。

    浮点型:

      float:4个字节,32位

      double:8个字节,64位

      科学计数法:512E2是浮点类型,不是整型。

      java语言浮点类型默认是double类型,希望把一个浮点型当成float类型处理,在浮点类型值后面加上F:

        float values = 3.1415926F

      正无穷大:POSITIVE_INFITY

      负无穷大:NEGATIVE_INFINITY

      非数:NaN

      所有正无穷大值都相等,所有负无穷大值都相等,而NaN不与任何值相等,甚至和NaN都不相等。

      只有浮点数除以0才可以得到正无穷大或者负无穷大。若一个整数值除以0,会抛出异常

      若开发者需要精确保存一个浮点数,则可以考虑使用BigDecimal类。

    Java 7中引入新功能,可以在数值中使用下划线:

      int binVal = 0B1000_0000_0000_0000_0011;

      double pi = 3.14_15_92_65_36;

    布尔类型:

      Java语言中,boolean类型的数值只能是true或false。其他基本类型的值也不能转换成boolean类型。

      若使用boolean类型的值与字符串进行连接,则boolean的值将会自动转换为字符串:

        String str = true + "";//str值将是“true”

    自动类型转换:

      

      System.out.println(3 + 4 + "Hello!");//输出 7hello!

      System.out.println("Hello!“ + 3 + 4);//输出hello!34

    强制类型转换:

      int IValue = 233;

        byte bValue = (byte) iValue;

    基本类型对应的包装类:

      boolean Boolean

      byte Byte

      short Short

      int Integer

      long Long

      char Character

      float Float

      double Double

      8个包装类都提供了一个parseXxx(String str);静态方法用于将字符串转换成基本类型:

      String a = "45";

      int iValue = Ineger.parseInt(a);

    本章练习:

    1.定义学生、老师、教室三个类,为三个类编写文档注释,并使用javadoc工具生成API文档。

    作业链接:https://github.com/lanshanxiao/-Java-

  • 相关阅读:
    蒙特卡洛法(随即取样法) 数模 笔记
    【数模学习】Matlab 符号微积分 计算微分、雅可比矩阵、不定积分与定积分、求解微分方程
    Length of Last Word
    基于视频深度学习的人物行为识别 资料汇总
    3S比赛预定
    求解一元多次方程 牛顿迭代法
    LeetCode | Climbing Stairs
    LeetCode | Palindrome Number
    LeetCode | Merge Sorted Array
    LeetCode | Valid Palindrome
  • 原文地址:https://www.cnblogs.com/lanshanxiao/p/7245528.html
Copyright © 2020-2023  润新知