(一) 基本概念
选择题
1.编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A.java B.class C.html D.exe
2.Java程序的执行过程中用到一套JDK工具,其中java.exe是指
( ) A.Java文档生成器 B.Java 解释器 C.Java编译器 D.Java 类分解器
3、下列哪一个是合法的标识符:
A、12class; B、+viod; C、-5; D、_black;
4、下列哪一个不是JAVA语言中保留字:
A、if; B、sizeof; C、private; D、null;
5、下列描述中正确的一项是:
A、标识符首字符的后面可以跟数字;
B、标识符不区分大小写;
C、复合数据类型变量包括布尔型、字符型、浮点型;
D、数组属于基本数据类型;
6、下列哪一项不属于变量的组成部分:
A、变量名; B、变量属性; C、变量初值; D、变量大小;
7、下列关于变量组成部分描述正确的一项是:
A、变量名不是标识符; B、变量名是标识符;
C、浮点型属于复合类型; D、变量属性分为:基本类型和符合类型;
8、下列选项中,哪一项不属于JAVA语言的简单数据类型:
A、整数型; B、数组; C、字符型; D、浮点型;
9、下列关于变量作用域的描述中,不正确的一项是:
A、变量属性是用来描述变量作用域的;
B、局部变量作用域只能是它所在的方法的代码段;
C、类变量能在类的方法中声明;
D、类变量的作用域是整个类;
10、下列关于基本数据类型的说法中,不正确的一项是:
A、boolean或者为真或者为假;
B、float是带符号的32位浮点数;
C、double是带符号的64位浮点数;
D、char应该是8位的Unicode字符;
11、下列关于溢出的说法中,正确的一项是:
A、一个整型的数据达到整型能表示的最大数值后,再加1,则机器产生上溢,结果为整型的最大值;
B、一个整型的数据达到整型能表示的最小数值后,再减1,则机器产生下溢,结果为整型的最小值;
C、实型变量在运算中不会产生溢出的问题;
D、实型变量在运算中和整型一样会产生溢出问题;
12、下列关于char类型的数据说法中,正确的一项是:
A、’“r’表示换行符;
B、’“n’表示回车符;
C、char类型在内存中占16位;
D、凡是在Unicode的字符都可以用单引号括起来作为char类型常量;
13、下列关于基本数据类型的取值范围描述中,正确的是:
A、byte类型范围是-128~128;
B、boolean类型范围是真或者假;
C、char类型范围是0~65536;
D、short类型范围是-32767~32767;
14、下列哪个不是正确标识符:
A、$million; B、$_million; C、1$_million; D、$1_million;
15、下列关于JAVA语言中要使用的一个变量,不正确的是:
A、在JAVA程序中要使用一个变量,必须先对其进行声明;
B、变量声明语句可以在程序的任何地方,只要在变量使用前就可以;
C、变量不可以在其作用域之外使用;
D、局部变量在使用之前可以不初始化,系统使用默认的初始值;
16、下列JAVA语句中,不正确的一项是:
A、int $e,a,b=10; B、char c,d=’a’;
C、float e=0.0d; D、double e=0.0f;
17、 Java 中char类型的数据长度为
(A)8位 (B)16位 (C)32位 (D)64位
18、下列关于自动类型转型的说法中,哪个正确:
A、char类型数据可以自动转换为任何简单的数据类型的数据;
B、char类型数据只能自动转换为int类型数据;
C、char类型数据不能自动转换boolean类型数据;
D、char类型不能做自动类型转换;
19、下列语法中不正确的一个是:
A、float a=1.1f; B、byte d=128; C、double c=1.1/0.0; D、char b=1.1f;
20、下列哪一项属于JAVA语言的复合数据类型:
A、无符号整数类型; B、整型; C、联合类型; D、接口;
21、下列语句中,不正确的是:
A、float e=1.1f; B、char f=1.1f; C、double g=1.1f; D、byte h=1;
22、下列哪一个不属于JAVA语言的数据类型:
A、指针类型; B、类; C、数组; D、浮点类型
23. 下列哪个是反斜杠字符的正确表示?
A) \\\\ B) *\\\\ C) \\ D) \\'\\'
简答题:、
指定变量b为字节型,变量f为单精度实型,变量l为64位整型。
请写出这三个变量的声明(定义)
声明格式 : 类型 变量名
(二)算术运算符
练习以下练习题,分析过程。
//***************练习 1*************************
int a = 15;
int b = 2;
double c = 2;
System.out.println(a + \"/\" + b + \"=\" + (a / b)); 15/2=7
System.out.println(a + \"%\"+ b + \"=\" + (a % b)); 15%2=1
System.out.println(a + \"/\" + c + \"=\" + (a / c));
System.out.println(a + \"%\" + c + \"=\" + (a % c));
//****************练习 2************************
int x = 10;
int a = x+ x++;
System.out.println(\"a =\" + a); a= 20
System.out.println(\"x =\" + x); x=11
x=10;
int b = x + (++x);
System.out.println(\"b =\" + b);
System.out.println(\"x =\" + x);
X=10;
int c = x + x--;
System.out.println(\"c =\" + c);
System.out.println(\"x =\" + x);
X=10;
int d = x + --x;
System.out.println(\"d =\" + d);
System.out.println(\"x =\" + x);
//*****************练习 3***********************
boolean x, y, z;
int a = 15;
int b = 2;
double c =15;
x = a > b; //true;
y = a < b; //false;
z = a != b; //true;
System.out.println(\"x =\" + x);
System.out.println(\"y =\" + y);
System.out.println(\"z =\" + z);
//*****************练习 3***********************
int a = 15;
int b = 2;
int x = a & b;
int y = a | b;
int z = a ^ b;
System.out.println(a + \"&\" + b + \"=\" + x);
System.out.println(a + \"|\" + b + \"=\" + y);
System.out.println(a + \"^\" + b + \"=\" + z);
//*******************练习 4*********************
int x ;
double y;
x = (int)22.5 + (int)34.7;
y = (double)x;
System.out.println(\"x = \" + x);
System.out.println(\"y = \" + y);
//*********************练习 5*******************
int i = 5;
int j = 5;
int m = 5;
int n = 5;
i++;
j = j + 1;
m--;
n = n - 1;
System.out.println(i);
System.out.println(i++);
System.out.println(++i);
System.out.println(i--);
System.out.println(j);
System.out.println(j++);
System.out.println(j--);
System.out.println(--j);
System.out.println(m);
System.out.println(n);
//*********************练习 6*******************
int i = 0;
int j = 0;
System.out.println(i);
System.out.println(j);
i++;
++j;
System.out.println(i);
System.out.println(j);
System.out.println(i++);
System.out.println(++j);
System.out.println(i);
System.out.println(j);
(三)关系逻辑运算符
1、class OperatorDemo {
public static void main(String[] args) {
int a = 3;
int b = 4;
int c = 5;
//&逻辑与
System.out.println((a > b) & (a > c));
System.out.println((a > b) & (a < c));
System.out.println((a < b) & (a > c));
System.out.println((a < b) & (a < c));
System.out.println(\"---------------\");
//|逻辑或
System.out.println((a > b) | (a > c));
System.out.println((a > b) | (a < c));
System.out.println((a < b) | (a > c));
System.out.println((a < b) | (a < c)); System.out.println(\"---------------\");
//!逻辑非
System.out.println(!(a > b));
System.out.println(!(a < b));
System.out.println(!!(a > b));
System.out.println((a > b));
}
}
/*
说明:&&和&的区别? ||和|的区别?
&&——左边是false(假),右边不执行。结果为false(假)
&——左、右边都执行。
||——左边是true(真),右边不执行。结果为true(真)
|——左、右边都执行
2、class OperatorDemo2 {
public static void main(String[] args) {
int a = 3;
int b = 4;
int c = 5;
//&&双与
System.out.println((a > b) && (a > c)); //false && false = false
System.out.println((a > b) && (a < c)); //false && true = false
System.out.println((a < b) && (a > c)); //true && false = false
System.out.println((a < b) && (a < c)); //true && true = true
int x = 3;
int y = 4;
boolean b1 = ((++x == 3) && (y++ == 4));
System.out.println(\"x:\"+x);
System.out.println(\"y:\"+y);
System.out.println(b1); }
(四)赋值运算符
public class Test {
public static void main(String args[]) {
int a = 10;
int b = 20;
int c = 0;
c = a + b;
System.out.println(\"c = a + b = \" + c );
c += a ;
System.out.println(\"c += a = \" + c );
c -= a ;
System.out.println(\"c -= a = \" + c );
c *= a ;
System.out.println(\"c *= a = \" + c );
a = 10;
c = 15;
c /= a ;
System.out.println(\"c /= a = \" + c );
a = 10;
c = 15;
c %= a ;
System.out.println(\"c %= a = \" + c );
}
}
因篇幅问题不能全部显示,请点此查看更多更全内容