9月29

第一单元数据类型和运算符学习指导书

一:学习目标

知识点

知识点重要性

掌握程度

知识点关联

  1. 基本数据类型
  2. 常量和变量

极高

熟练

学习JAVA语言的基本语法知识是进行编程的第一步。为了以后的编程打下良好的基础

运算符

极高

熟练

运算符为编程语言语法知识,为编写程序提供语言基础

 

二:重难点知识点

1、重难点1:基本数据类型

学习方法:

1、 掌握理解以下各数据类型的表示范围、作用。

基本类型:byte 二进制位数:8

包装类:java.lang.Byte

最小值: -128

最大值: 127

作用:存储字节类型的数据

 

基本类型:short 二进制位数:16

包装类:java.lang.Byte

最小值: -32768
最大值: 32767

作用:存储较小的整数

 

基本类型:int 二进制位数:32
包装类:java.lang.Short
最小值:-2147483648
最大值:2147483647

作用:存储较大的整数

 

基本类型:long 二进制位数:64
包装类:java.lang.Long
最小值:-9223372036854775808
最大值:9223372036854775807

作用:存储更大的整数

 

基本类型:float 二进制位数:32
包装类:java.lang.Float
最小值:1.4E-45
最大值:3.4028235E38

作用:存储小数

 

基本类型:double 二进制位数:64
包装类:java.lang.Double
最小值:4.9E-324
最大值:1.7976931348623157E308

作用:存储较大范围的小数

 

基本类型:char 二进制位数:16
包装类:java.lang.Character
最小值:0
最大值:65535

作用:存储单个字符

 

2、 基本数据类型变量的初始值

int char byte short long 都为 0
float double 为 0.0
boolean 为false

 

3、 基本数据类型在使用过程中的常见问题:

boolean类型不能强制类型转换成 int, char, byte, short, long, float, double类型

long类型到int转换时,会截取部分数据

 

long a = 922337203685477580L;

int b = (int)a;

System.out.println(b);

结果:-1

 

long数据范围比int类型要大, 导致int类型无法容纳如此大的数。最终为-1

char 类型转换int类型时,结果值为该字符在ASCII中所对应的数值,简称ASCII码

 

char a = 'a';

       int b = a;

       System.out.println(b);

结果:97。 a在ASCII码中的值为97,故结果为97

 

byte类型在内存中为8位二进制数, 可表示为-128 – 127。 故赋值时不能超出此范围

 

2 、重难点2:常量和变量

(1)常量

java常量很简单就是一个固定值,比如说1,2,3,4都属于常量就是一个固定值。

声明常量的语法为:

    final 数据类型  常量名称[=值]

    常量名称通常使用大写字母,例如PI,YEAR等,但并没有硬性要求,仅仅是一个习惯而已

 

(2)变量

       变量也是一种标识符,其命名规则如下:

    1. 变量名可由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成;

      2. 变量名不能以数字开头;

      3. 变量名不能是Java中的保留关键字

 

常量定义的基本注意事项:

       一是常量在定义的时候,就需要对常量进行初始化。

  二是final关键字使用的范围。这个final关键字不仅可以用来修饰基本数据类型的常量,还可以用来修饰对象的引用或者方法。

三是需要注意常量的命名规则。

常见错误;

(1)    变量未赋值先使用

public class Error{

              public static void main (String [] args){

                     String title; // 声明变量title存储课程名

                     System.out.println(title); // 从控制台输出变量的值

      }

}

(2)    使用非法的变量名

public class Error2{

              public static void main (String [] args){

                     int %hour = 18; // 声明变量hour存储学时

                     System.out.println(%hour); // 从控制台输出变量的值

      }

}

(3)    变量不能重名

public class Error3{

              public static void main (String [] args){

                     String name=” 张三”; // 声明变量name存储张三

                     String name=” 李四”; // 声明变量name存储李四

              }

}

3 、重难点3:运算符

       (1) 算术运算符:

              单目:+(取正)-(取负) ++(自增1) - -(自减1)

         双目:+ - * / %(取余)

         三目:a>b?true:false 说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。

 

       (2) 关系运算:

           等于符号:==,不等于符号: != ,大于符号:>, 小于符号:<,大于等于符号: >= ,小于等于符号: <= 。

(3)    位运算符 逻辑运算符:

位运算符 与(&)、非(~)、或(|)、异或(^)&:当两边操作数的位同时为1时,结果为1,否则为0。如1100&1010=1000

| :当两边操作数的位有一边为1时,结果为0,否则为1。如1100|1010=1110

         ~:0变1,1变0

         ^:两边的位不同时,结果为1,否则为0.如1100^1010=0110

         逻辑运算符

  与(&&)、非(!)、或(||)

(4)    赋值运算符

= 、+=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=

      常用运算符举例:

  1. 根据天数(46)计算周数和剩余的天数

public class CalcDays {

 

       public static void main(String[] args) {

              int days = 46; // 天数

              int week = days / 7; // 星期

              int leftDay = days % 7;// 剩余的天数

 

              System.out.println(days + "天等于" + week + "周零" + leftDay + "天");

       }

}

  1. 已知圆的半径radius= 1.5,求其面积

public class Area {

 

       public static void main(String[] args) {

              double pi = 3.14159; // 圆周率

              double radius = 1.5; // 半径

              double area = pi * radius * radius; // 计算圆面积

              System.out.println("圆的半径是: " + radius);

              System.out.println("圆的面积是: " + area);

       }

}

 

共性问题

 

1、各种数据类型之间的转换,如何转换?

答:使用强制类型转换,不报编译错误为准。

2、常量在何时使用?

答:当程序中有些变量的值永远都不需要改变的时候,可以换成常量。

在代码中用双引号括起来的字符串,可以使用常量。

3、如何进行数据类型转换?

   答:一种是自动数据类型转换,另一种是强制类型转换。自动数据类型转换首先两种类型要兼容:数值类型(整形和浮点型)互相兼容;目标类型大于源类型:double型可以存放int型数据,因为double型变量分配的空间宽度足够存储int型变量。因此,我们也把int型变量转换成double型变量形象地称为“放大转型”。强制类型转换是在现有类型定义前加上要强制转换类型,并且不报编译错误为准。

posted @ 2015-09-30 00:04  素还真大战叶小钗  阅读(195)  评论(0编辑  收藏  举报