zoukankan      html  css  js  c++  java
  • java 基础 01 变量和注释、数据类型

    1,变量和注释

      比如:姓名:xiaoming  年龄:18

    1.1变量的基本概念

      当需要在程序中记录单个数据内容时,则需要声明一个变量来处理,而变量的本质就是内存中申请一块存储单元用于存储数据内容,由于该存储单元的数据可以改变,因此得名"变量"。

      由于存放的数据内容不同导致存储单元的大小不同,在Java语言中采用数据类型加以描述,为了便于下次访问则需要指定一个名称,叫做变量名。

    1.2变量的声明方式

      数据类型    变量名称    =    初始值 ;      //其中初始值可以省略,但分号不可以省略

      比如:

         int  age  =  18;  //推荐使用该方式

         int  age;

      扩展:

         在main()方法的方法体中,直接声明的变量叫做局部变量,该变量的作用域从声明开始一直到方法体结束。

    1.3标识符(变量名)的命名规则

      (1)由字母、数字、下划线以及美元($)组成,其中数字不能开头。

          如:name,age,name1,name2 等

      (2)不能与java中的关键字保留字重名,所谓关键字就是java语言中用于表示特征含义的单词(保留字就时java官方定义了,但是未使用)。

          如:public、class、void、static等 

      (3)区分大小写,长度没有限制,但是不宜过长。

          如:name, Name 代表不同的变量,不推荐使用。

      (4)尽量做到见名知意,支持汉语,但不推荐使用。

          如:name、time、length、width、size等

    1.4常见的注释

      //    单行注释,从//开始,一直到本行的末尾都是注释内容。

      /*    */  多行注释,从/*开始一直到*/结尾之间都是注释,该注释不允许嵌套。

      /**   */  说明注释,它以 /** 开始,以 */结束。说明注释允许你在程序中嵌入关于程序的信息。你可以使用 javadoc 工具软件来生成信息,并输出到HTML文件中。

            说明注释,使你更加方便的记录你的程序信息。

    2.数据类型
    2.1 基本分类
      在Java语言中将数据类型分为两大类:

        (1)基本数据类型

          byte、short、int、long、float、double、boolean、char

          1个      2个    4个   8个     4个      8个          1个         2个

        (2)引用数据类型

          数组、类、接口、枚举、注解

    2.2 常见的进制
      在日常生活中采用十进制,逢十进一,每个十进制数字的权重:10^0、10^1、10^2、...
      在计算机底层采用二进制,逢二进一,每个二进制数字的权重:2^0、2^1、2^2、...
      通常采用二进制的最高位(最左边)代表符号位,0代表非负数,1代表负数。
      为了简化二进制的表示形式,采用八进制和十六进制加以描述。
      如:
      100 10 1
      10^2 10^1 10^0
      百 十 个
      1 2 3

    2.3 十进制和二进制之间的转换(尽量理解和掌握)
      (1)正十进制转换为二进制的方式
        a.除2取余法,让十进制整数不断地除以2取出余数,直到商为0时将余数逆序排列。
        b.拆分法,将十进制整数拆分为若干个二进制权重的和,若有该权重下面写1,否则写0。
        如:
        45 => 32 + 8 + 4 + 1
        128 64 32 16 8 4 2 1
        0 0 1 0 1 1 0 1 => 0010 1101

      (2)正二进制转换为十进制的方式
        a.加权法,让二进制的每个数字乘以当前位的权重,最后累加起来。
        如:
        0010 1101 => 0*2^7 + 0*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 1*2^0
        => 0 + 0 + 32 + 0 + 8 + 4 + 1
        => 45

      (3)负十进制转换为二进制的方式
        a.将十进制的绝对值转换为二进制,然后进行按位取反再加1.
        如:
        -45 => 绝对值转化为二进制:0010 1101
        => 按位取反: 1101 0010
        => 再加1: 1101 0011

        45 + (-45) = 0;
        45: 0010 1101
        -45: 1101 0011 +
        --------------------------
        1 0000 0000 (高位溢出(丢弃) => 0)

      (4)负二进制转换为十进制的方式
        a.先减1再按位取反,转换为十进制整数后添加负号。
        如:
        1101 0011(负) => 先减1: 1101 0010
        => 按位取反:0010 1101
        => 转换为十进制整数:45
        => 添加负号:-45

      练习:
        65 和 88 转换为二进制:0100 0001 和 0101 1000
        -65 和 -88 转换二进制:1011 1111 和 1010 1000
        0101 1111 和 0110 1101转换为十进制(正):95 和 109
        1010 0011 和 1100 1101转换为十进制(负):-93 和 -51

    2.4 二进制和八进制以及十六进制之间的转换(了解)
      (1)二进制转换为八进制的方式
        a.将每三位二进制合并为一位八进制即可,并使用0作为八进制的前缀。
        如:010 110(二进制) => 026(八进制)

      (2)八进制转换为二进制的方式
        a.将每一位八进制拆分为三位二进制即可,并使用0b作为二进制的前缀(从jdk1.7的新特性)
        如:026(八进制) => 0b010 110(二进制)

      (3)二进制转换为十六进制的方式
        a.将每四位二进制合并为一位十六进制即可,并使用0x作为十六进制的前缀。
        如:1010 0011(二进制) => 0xa3(十六进制,采用a~f来表示10~15)

      (4)十六进制转换为二进制的方式
        a.将每一位十六进制拆分为四位二进制即可,并使用0b作为二进制的前缀。
        如:0x9b(十六进制) => 0b1001 1011(二进制)

    2.5 单个字节表示的整数范围(重中之重)
      在计算机底层采用二进制进行数据的描述,最高位代表符号位(1代表负数,0代表非负数),所能表示的整数范围是:
      非负数:0000 0000 ~ 0111 1111 => 0 ~ 127 => 0 ~ 2^7-1
      0111 1111 => 0*2^7 + 1*2^6 + 1*2^5 + 1*2^4 + 1*2^3 + 1*2^2 + 1*2^1 + 1*2^0
      => 0 + 64 + 32 + 16 + 8 + 4 + 2 + 1
      => 127

      负数:1000 0000 ~ 1111 1111 => -128 ~ -1 => -2^7 ~ -2^0
      1000 0000 => 先减1: 0111 1111
      => 按位取反:1000 0000
      => 转换为十进制整数:128
      => 添加负号: -128
      1111 1111 => 先减1: 1111 1110
      => 按位取反:0000 0001
      => 转换为十进制整数:1
      => 添加负号:-1
      综上所述:
      单个字节所能表示的整数范围是:-128 ~ 127(-2^7 ~ 2^7-1).

    2.6 整数类型
      在Java语言中用于描述整数数据的类型有:byte、short、int、long,推荐使用int类型。
      其中byte类型在内存空间中占1个字节,表示的范围是:-2^7 ~ 2^7-1.
      -128 ~ 127.
      其中short类型在内存空间中占2个字节,表示的范围是:-2^15 ~ 2^15-1.
      -32768 ~ 32767.
      其中int类型在内存空间中占4个字节,表示的范围是:-2^31 ~ 2^31-1.
      正负二十一亿之间.
      其中long类型在内存空间占8个字节,表示的范围是:-2^63 ~ 2^63-1.
      比int类型还大的数.
      在Java代码中直接写出的整数数值叫做直接量/字面值/常量,如:20,该数值默认为int类型,若希望表达比int类型还大的直接量,则需要在直接量的后面加上l或者L,推荐使用L,来表示           long类型的直接量。


      扩展:
      在以后的开发中若表示比long类型还大的整数,则可以借助java.math.BigInteger类型。

    2.7 浮点类型
      在Java语言中用于描述小数数据的类型有:float、double,推荐使用double类型。
      其中float类型在内存空间中占4个字节,叫做单精度浮点数,通常可以描述小数点后7位。
      其中double类型在内存空间中占8个字节,叫双精度浮点数,通常可以描述小数点后15位。
      在Java代码中只能写出的小数数值叫做直接量,如:3.14,默认为double类型,若希望表达float类型的直接量,则需要在直接量的后面加f或F即可。

      扩展:
      由于float类型和double类型的变量在运算时可能会有误差,为了实现精确运算则可以借助java.math.BigDecimal类型。
      

  • 相关阅读:
    Redis集群~StackExchange.redis连接Twemproxy代理服务器
    开源的Android视频播放器
    Servlet 实现文件的上传与下载
    HDU1878 欧拉回路
    C#根据域名查询IP(CMD命令参数输入或者启动程序后再输入查询)
    Windows API获取系统配置文件的配置参数
    Lucene核心--构建Lucene搜索(下篇,理论篇)
    Lucene核心--构建Lucene搜索(上篇,理论篇)
    hdu1397(素数组和成偶数的个数 用 标记法)
    hdu1248
  • 原文地址:https://www.cnblogs.com/jungejava/p/9396457.html
Copyright © 2011-2022 走看看