第二章

第2章 基本程序设计

2.1 关键字和标识符

关键字:KeyWord 在高级编程语言里,被赋予特殊含义的单词。
标识符:定义的名称、变量、函数、类名、包名。
注意:标识符必须遵从一下规则
1.标识符只能由字母、数字、下划线()和美元符号( ) 构 成 的 字 符 序 列 。 2. 标 识 符 必 须 以 字 母 、 下 划 线 ( ) 或 美 元 符 号 ( )构成的字符序列。 2.标识符必须以字母、下划线(_)或美元符号( 2.线)开头,不能以数字开头。
3标识符不能保留字。
4.标识符不能是true、false或null。
5.标识符可以为任意长度。
6.严格区分大小写。
7.必须是一个词即单词之间不能存在空格。
起名规范;
1.变量名/函数名 小驼峰式书写(除第一个单词之外,其他单词首字母大写)
2.类名/接口名 大驼峰式书写(所有单词首字母大写)
3.常量 所有字母大写 单词之间加

4包名 所有字母小写单词之间加.
尽量不要使用单个字母或者没有意义的字母组合当成一个名称。

2.2 注释和常量

注释:注解说明的文本 不属于代码 所以不会参与编译 也不会在字节码中出现
注释分为三种:单行注释、多行注释和文本注释
注释可以相互嵌套但是除了多行嵌套多行。
常量:表示从不改变的数据。π是一个常量,如果频繁的使用它,但又不想重复的输入3.14159
代替的方式就是声明一个常量π,下面就是声明常量的语法
final datatype CONSTATNAME=value;
常量必须在同一条语句中声明和赋值,单词final是声明常量的Java关键字。
使用常量的好处
1.不必重复输入一个值
2.如果必须修改常量值只需在代码中的一个地方做改动
3.给常量赋一个描述性名字会提高程序易读性。

2.3 变量和数据类型

2.3.1 变量

变量被用于存储程序中后面要用到的值,它们被称为变量是因为它们的值可以被改变
变量用于表示特定类型的数据,为了使用变量,可以通过告诉编译器变量的名字及其
可以存储的数据类型来声明,变量声明告知编译器根据数据类型为变量分配合适的内存
空间。
注意:
1.变量之间用逗号隔开
2.变量通常都有初始值,可以一步完成变量的声明和初始化。
3.也可以使用简捷的方式来同时声明和初始化同一类型的变量。int i=1,j=2;
提示:在赋值给变量之前,必须声明变量,方法中声明的变量在使用之前必须被赋值
任何时候,都要尽可能一步完成变量的声明和赋初值,这会是的程序易读,同时避免程序设计错误
注意:
每个变量都有使用范围,变量的使用范围是指变量可以被引用到程序的部分,定义变量
使用范围的规则将本书后逐步介绍。
变量的分配是由计算机随机分配的,物理地址不确定,为了方便找到变量所以对该变量
空间取名,变量名变量空间里之鞥呢存储同一类型的数据

2.3.2数据类型

基本数据类型有整形、浮点型、字符型和布尔型。
整形分为byte(1字节 8位 范围在-27-1-27)short(2字节 16位 范围在-215-1-215)
int(最常用 4字节 32位)long(8字节 64位)
浮点型分为float(4字节)double(常用 8字节)
字符型为char(2字节 16位 范围在1-65536)
布尔型boolean 大小不确定 只有true和false

2.4输入和输出

输入时就是scanner算法 即Scanner scanner=new Scanner(System.in
输出就是system.out.println(“输入内容”)

2.5数据类型转换

数据类型转化就是将一种数据类型转换成另一种数据类型
比如说我们要系统随机产生一个0-100的整数
Math.random() 能够产生一个[0,1)我们对它*101就会产生一个[0,101)的随机数但是
要求产生0-100的整数所以我们就把Math.random()强制转换成整形
(int)(Math.random())
这样就产生了0-100的随机数并且随机数为整数

2.6算数运算符

加+
即两个数相加的运算符
减-
即两个数相减的运算符
乘*
即两个数相乘的运算符
除/
即两个数相乘的运算符
取余%
a%b取余 得数为余数
自加++
++在前先+1再用
++在后先用在再+1
自减–
–在前先-1再用
–在后先用再-1

2.7 赋值运算符

加等+=
加法赋值运算符实例:i+=8等价于i=i+8
减等-=
减法赋值运算符实例:i-=8等价于i=i-8
乘等*=
乘法赋值运算符实例:i*=8等价于i=i*8
除等/=
除法赋值运算符实例:i/=8等价于i=i/8
模等%=
求余赋值运算符实例:i%=8等价于i=i%8

2.8 常见错误和陷阱

2.8.1 错误1:未声明、初始化的变量和未使用的变量

变量必须在使用之前声明为一个类型并且赋值,一个常见的错误是没有声明变量或者初始化一个变量。而且在Java中是严格区分大小写的,如果大小写不一致则被
认为为两个不同的变量
如果声明了一个变量,但是没有在程序中用到,将是一个潜在错误,因此应该从程序中将未使用的变量移除

2.8.2常见错误2:整数溢出

数字以有限的字数存储,当一个变量被赋予一个过大(以存储大小而言)的值,以至
无法存储该值,这称为溢出。Java不会给出关于溢出的警告或者错误,因此当处理一个与给定类型的最大和
最小范围很接近的数值时,要特别小心。
如果存储的浮点数很小时(例如 接近于0),这会引起向下溢出,Java会将它近似为0
所以一般情况下不用考虑向下溢出的问题。

2.8.3常见错误3:取整错误

一个取整错误也称为凑整错误,是计算得到的数字的近似值和确切的算数值之间的不同,
例如:如果保留三位小数位数1/3近似等于0.333,如果保留7位,近似值是0.3333333
因为一个变量保存的位数是有限的,因此取整错误是无法避免的,涉及浮点数的计算都是
近似的因为这些书没有以准确的精度来存储。

2.8.4常见错误4:超出预期的整数除法

Java使用同样的除法操作来执行整数和浮点数的除法,当两个操作数是整数时,/操作符执行的一个整数除法,操作结果
是整数,小数部分被截去,要强制两个整数执行一个浮点数除法时。将其中一个整数转换为浮点数值即可。

2.8.5 常见陷阱:冗余的输入对象

编程新手经常为每个输入编写代码创建多个输入对象,例如,以下代码读取一个整数和一个双精度值
Scanner input=new Scanner(System.in);
System.out.print(“enter an integer”);
int v1=input.nextInt();
Scanner input1=new Scanner(System.in);
System.out.print(“enter a double value”);
doube v2=input1.nextDouble();
代码没有出错,但是效率太低,它创建了两个不必要的输入对象,可能导致一些不易发现的错误,
应该如下重写代码:
Scanner input=new Scanner(System.in);
System.out.print(“enter an integer”);
int v1=input.nextInt();
System.out.print(“enter a double value”);
doube v2=input.nextDouble();
本章小结
1.标识符是程序中用于命名诸如变量、常量、方法、类、包之类元素的名称。
2.标识符是由字母、数字、下划线()和美元符号($)构成的字符序列。标识符
必须以字母或下划线(
)开头,不能以数字开头,标识符不能是保留字,标识符可以
为任意长度。
3.变量用于存储程序中的数据,声明变量就是告诉编译器变量可以存储何种数据类型。
4.有两种类型的import语句:明确导入和通配符导入,明确导入是import语句中指定
导入单个类;通配符导入将包中所有的类导入。
5.在Java中,等号(=)被用作赋值符=操作符。
6.方法中声明的变量必须在使用前被赋值。
7.命名常量(或简称为常量)表示从不改变的永久数据。
8.用关键字final声明命名常量。
9.Java提供四种整数类型(byte short int long)表示四种不同长度范围的整数。
10.Java提供两种浮点类型(float、double)表示两种不同精度的浮点数。
11.Java提供操作符完成数值运算:加号(+)减号(-)乘号()除号(/)和求余符号(%)。即%=(求余赋值)。
12.整数运算(/)得到的结果是一个整数。
13.Java表达式中的数值操作符和算数表达式中的使用方法是完全一致的
14.Java提供拓展赋值操作:+=(加法赋值)-=(减法赋值)、
=(乘法赋值)、/=(除法赋值)
以及%=(求余赋值)
15.自增操作符(++)和自减操作符–分别对变量+*1和-1。
16.当计算的表达式中有不同类型的值,Java会自动地将操作数转换为恰当的类型。
17.可以使用(type)value这样的表示法显示地将数值从一个类型转换到另一个类型。
18.将一个较小范围类型的变量转换为较大范围类型的变量称为拓宽类型。
19.将一个较大范围类型的变量转换为较小范围类型的变量称为缩窄类型。
20.拓宽类型不需要显示转换,可以自动完成,缩窄类型必须显示完成。
21.在计算机科学中1970年1月1日午夜零点称为UNIX时间戳。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值