第2章
1.标示符和关键字在定义和使用方面有何区别?
【答】定义方面:标示符是用户定义的、以字母开头的字母数字序列,关键字是由Java语言定义的、具有特定含义的英文单词。
使用方面:标示符用于命名变量、常量、类、对象等元素,每一个关键字都有特定的含义,不能被赋予别的含义。
2.Java语言的基本数据类型有哪些?引用数据类型有哪些?
【答】基本数据类型有:整数类型byte、short、int、long,浮点数类型float、double,字符类型char,布尔类型boolean;引用数据类型包括数组(array)、类(class)和接口(interface)
3.试分析基本数据类型与引用数据类型的主要特点,并说明使用这两种变量有哪些差别?
【答】基本数据类型的变量保存数据值,而引用数据类型的变量保存地址。
4.算术运算、关系运算、逻辑运算和位运算各有哪些运算符?
【答】算术运算:单目运算符有+(正)、—(负)、++(自增)、——(自减),双目运算符有+(加)、—(减)、*(乘)、/(除)、%(取余)
关系运算:=(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)都是双目运算
逻辑运算:&(与)、|(或)、!(非)、^(异或)、&&(条件与)、||(条件或),其中!是单目运算,其它都是双目运算
位运算:~(非)、&(与)、|(或)、^(异或)、<<(左移位)、>>(右移位)、>>>(无符号移位)
5.程序中为什么需要常量和变量?声明常量或变量时,为什么必须给出其所属的数据类型?
【答】在程序中使用的数据大多需要经常变化,用常量值表示显然不够,因此每一种算法语言都提供常量和变量来存储数据。
为了确定常量或变量的数据性质、取值范围、以及它们占用的内存单元的字节数和它们参加的合法运算和操作。
6.什么是变量的作用域,声明变量时,如何确定变量的作用域?
【答】变量的作用域是指其作用范围。变量声明的位置决定了它的作用域
7.设i是一个整数类型变量,写出下列问题对应的表达式?
(1)判断i为奇数或偶数;
【答】i%2==0//取值为true时是偶数,否则是奇数
(2)判断i的值是否在0~9之间;
【答】(i>0)&&(i<9)
8.设ch是一个字符变量,写出下列问题对应的表达式
(1)判断ch是一个十进制的数字字符
(2)判断ch是一个十六进制的数字字符
(3)判断ch是一个大写字母
(4)判断ch是一个英文字母,不论大写和小写
(5)如何将一个十进制的数字字符ch转换成对应的整数类型值
(6)如何将一个十六进制的数字字符ch转换成对应的整数类型值
9.说明for、while、和do-while三种循环语句的特点和区别?
While语句的特点:“先判断后执行”,当条件满足时执行循环体Do-while语句的特点:“先执行后判断”,先执行循环体,再判断条件是否满足For语句的特点:“先判断后执行”,但for语句将循环控制变量初始值、循环条件和变量的变化规律都以表达式形式写在循环体之前。
10.分别用for,while,do-while三种循环语句计算一个正数的阶乘
(1)for(i=1,i<=10,i++){
intSum=1;Sum=Sum*i;
} \\等价于Sum*=i;
(2)inti=1;while(i<=10){intSum=1;Sum=Sum*i;i++;}
inti=Sum=1;do{
Sum=Sum*i;
i++;
}while(i<=10);
11.输出以下数字的形式;
(1)0000
0111
0122
0123
〖解答〗采用二重循环的程序如下。
publicclassPhalanx{
publicstaticvoidmain(Stringargs[]){
intn=4;
//阶数
for(inti=0;i<n;i++){
for(intj=0;j<n;j++)
System.out.print(""+((i<j)?i:j));
System.out.println();
}
}
}
14.Java的数组比C++的数组有哪些优越之处?
【答】Java语言不支持C++的指针类型,对数组的操作只能按照数组方式,不能使用指针。Java的数组都是动态数组,并且是引用数据类型,提高了安全性和简单性。另外,Java语言具有资源回收机制,能够自动收回不再使用的资源,一般情况下程序不需要归还数组所占的内存空间。
15.作为引用数据类型,数组变量与基本数据类型的变量使用时有哪些区别?
【答】数组变量与基本数据类型变量不同点在于,存储单元的分配方式不同,两个变量之间的赋值方式也不同。基本数据类型变量获得存储单元的方式是静态的,声明了变量后系统就为变量分配了存储单元,就可以对变量赋值。两个变量之间的赋值是值本身。
数组变量的引用赋值,数组变量保存的是数组的引用,即数组占用的一片连续存储空间的首地址及长度特性。当声明一个数字变量而未申请空间时,变量是未初始化的,没有地址及特性值。只有申请了存储空间,才能以下标表示数组元素。