Java 基础篇2-变量以及数据类型

1.   变量和注释(重点)

如:

   姓名:xiaomage 年龄:18  ...

1.1 变量的基本概念

   当需要在Java代码中记录单个数据内容时,则需要声明一个变量进行处理,而变量的本质就是在内存中申请一块存储单元用于存放数据,该存储单元的数据可以发生改变。

   由于存放的数据内容不同导致所需的存储单元大小不同,此时可以使用数据类型的概念加以描述,并给该存储单元指定一个名称作为访问数据的方式。

1.2 变量的声明方式  

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

如:

   int age = 18;              - 推荐该方式

   String name ="xiaomage";

   intage; 

扩展: 在main()方法体中声明的变量叫做 局部变量,局部变量的作用域为:从声明开始到整个方法体结束为止。

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

  (1)要求必须由字母、数字、下划线以及$组成,其中数字不能开头; 

     如:age name  taobao  age2 name2

  (2)要求不能与Java语言中的关键字同名,关键字就是Java语言中用于表示特殊含义的标识符

     如:class void static 等

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

     如:day dAy Day - 不推荐使用  sendMsg

  (4)尽量做到见名知意,支持中文但不推荐使用;

     如:year month  day  time length 

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表示负数。

2.3 进制之间的转换(原理)

(1)正十进制转换为二进制的方式

   a.除2取余法,也就是让十进制整数不断地除以2并记录余数,直到商为0时逆序排序。

   b.拆分法,将十进制整数拆分为若干个二进制权重的和,若有该权重则下面写1,否则写0。

如:

   35 => 32 + 2 + 1  => 0010 0011

   128 64 32 16 8 4 2 1

    0   0 1  0 0 0 1 1

(2)正二进制转换为十进制的方式

   a.加权法,让二进制中的每个数字乘以当前位的权重,再累加起来。

如:

   0010 0011 => 0*2^7 +0*2^6 + 1*2^5 + 0*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 1*2^0

             => 0 + 0 + 32+ 0 + 0 + 0 + 2 + 1

             => 35

练习:

   66 和  80分别转换为二进制:0100 0010  和 0101 0000

(3)负十进制转换为二进制的方式

   a.将绝对值转换为二进制,然后进行按位取反再加1。

如:

   -35转换为二进制:                         35:0010 0011

       35转换为二进制:0010 0011            -35: 1101 1101 +

       按位取反:1101 1100                ---------------------

       再加1:   1101 1101                     1 0000 0000 (溢出,丢失,结果为0)

(4)负二进制转换为十进制的方式

   a.先减1再进行按位取反,采用加权法合并为十进制整数,最后添加负号。

如:

   1101 1101转换为十进制:

       先减1:       1101 1100

       按位取反:   0010 0011

       转换为十进制:35

       添加负号:   -35

2.5 整数类型

   在Java语言中用于描述整数数据的类型有:byte、short、int以及long,推荐使用int类型

   其中byte类型在内存空间中占1个字节,表示的整数范围是:-128~ 127.    -2^7 ~ 2^7-1.

   其中short类型在内存空间中占2个字节,表示的整数范围是:-32768~ 32767.    -2^15 ~ 2^15-1.

   其中int类型在内存空间中占4个字节,表示的整数范围是: 正负二十一亿之间.     -2^31 ~ 2^31-1.

   其中long类型在内存空间中占8个字节,表示的整数范围是:-2^63~ 2^63-1.

   在Java程序中直接写出的整数数值叫做直接量/字面值/常量,如:100。直接量默认为int类型,若希望描述更大的直接量,则需要在直接量的后面加上L或l,推荐使用L表示long类型。

扩展:

   若希望表示比long类型范围还大的整数,则需要借助java.math.BigInteger类型。 

2.7 布尔类型

   在Java语言中用于描述真假信息的类型有:boolean,数值只有两种:true 和 false。

   其中boolean类型在内存空间中的大小没有明确的规定,通常认为是1个字节。

2.8 字符类型

   在Java语言中用于描述单个字符信息的类型有:char,如:'1', 'a', '中'。 

   其中char类型在内存空间中占2个字节,该类型自身很少使用,在以后的开发中更多的都是使用多个字符组成的字符串,使用String类型加以描述,如:"hello"。

   由于计算机的底层只识别0和1组成的二进制序列,因此字母汉字等图案无法保存到计算机中,为了能够存储则给每个图案指定一个编号,该编号就叫做该字符的ASCII。

   要求大家记住的ASCII值有:

        'a' - 97   'A' - 65  '0' - 48   空格 - 32  换行符 - 10

   要求大家记住的转义字符有:

        \" - "   \' - ' \\ - \   \t - 制表符tab键  \n - 换行符

2.9 基本数据类型之间的转换

   自动类型转换: 主要指从小类型向大类型之间的转换。

   强制类型转换:主要指从大类型向小类型之间的转换。

         目标类型 变量名 = (目标类型)源类型的变量名;如:byte b1 = (byte)s1;

不积跬步,无以至千里;不积小流,无以成江海。

但愿能够帮助看到这篇文章的你! ^_^ 加油

猜你喜欢

转载自blog.csdn.net/qq474800358/article/details/80449334