9、下面代码运行结果为_________。 public class test { public static void main(string[] args) { int x = 1; int y = x x ; system.out.println("y is " y); } } a、y is 2. b、y is 1. c、y is 4. d、y is 3.
12、下列代码执行后,balance的值为 。 int balance = 10; while (balance >= 1) { if (balance < 9) break; balance = balance - 9; } a、–1 b、0 c、1 d、2
13、阅读代码,下列叙述正确的是()。 boolean even = ((231 % 2) == 0); if (even = true) system.out.println("it is even!"); else system.out.println("it is odd!"); a、这段代码有个语法错误 b、这段代码有个运行错误 c、这段代码运行显示 “it is odd!” d、这段代码运行显示“it is even!”
14、下面代码运行结果是 。 int y = 0; for (int i = 0; i < 10; i) { y = 1; } a、9 b、10 c、11 d、12
15、分析代码,下列描述正确的是 。 int x = 1; while ((0 < x) & (x < 100)) system.out.println(x ); a、循环一直运行. b、代码不能被编译,因为循环体没有在{}里. c、由于(0 d、数字 2 到 100 将被打印输出.
17、关于程序代码段,下列陈述正确的是()。 int[] list = new int[10]; for (int i = 0; i <= list.length; i ) { list[i] = (int)(math.random() * 10); } a、数组长度必须用10替换。 b、循环体将执行10次,用随机数填充数组。 c、循环体将执行10次,用零填充数组。 d、代码有一个运行时错误,指示数组超出了绑定。
18、math.pow(3, 2) 的返回值是(). a、8 b、8.0 c、9.0 d、9
19、下面代码输出结果是()。 for (int i = 0; i < 15; i ) { if (i % 4 == 1) system.out.print(i " "); } a、1 5 9 13 b、1 3 5 7 9 11 13 15 c、1 4 8 12 d、1 5 9 13 16
20、-15 % 4 is _____ a、-3 b、-1 c、0 d、-2
21、下面代码段的运行结果是()。 double temperature = 50; if (temperature >= 100) system.out.println("too hot"); else if (temperature <= 40) system.out.println("too cold"); else system.out.println("just right"); a、too hot b、too cold c、too hot too cold just right d、just right
22、下列代码打印输出 "welcome to java"的次数是()。 int count = 0; do { system.out.println("welcome to java"); } while (count < 10); a、a. 10 b、8 c、0 d、11
23、下面代码执行后i的值是()。 int y = 0; for (int i = 0; i<10; i) { y = i; } a、9 b、10 c、undefined d、11
24、下面代码运行后的结果是()。 class test { public static void main(string[] args) { int[] list1 = {1, 2, 3}; int[] list2 = {1, 2, 3}; list2 = list1; list1[0] = 0; list1[1] = 1; list2[2] = 2; for (int i = 0; i < list2.length; i ) system.out.print(list2[i] " "); } } a、1 2 3 b、1 1 1 c、0 1 2 d、0 1 3
25、假设方法 p的定义如下: public static int[][] p() 下列陈述中可以用作方法p的返回语句的是()。 a、return {1, 2, 3}; b、return int[]{1, 2, 3}; c、return new int[]{1, 2, 3}; d、return new int[][]{{1, 2, 3}, {2, 4, 5}};
26、下列代码执行后打印输出count的值是()。 int count = 0; do { system.out.println("welcome to java"); } while (count < 9); system.out.println(count); a、11 b、0 c、9 d、10
27、下面程序的输出结果是 5 4 3 2 1 。 public class test { public static void main(string[] args) { int[] list = {1, 2, 3, 4, 5}; reverse(list); for (int i = 0; i < list.length; i ) system.out.print(list[i] " "); } public static void reverse(int[] list) { int[] newlist = new int[list.length]; for (int i = 0; i < list.length; i ) newlist[i] = list[list.length - 1 - i]; list = newlist; } }
28、下面程序的输出结果是 1 2 1 2 3 1 2 3 4 1 2 3 4 5 public class test { public static void main(string[] args) { for (int i = 1; i <= 5; i ) { for (int j = 1; j <= i; j ) system.out.print(j " "); system.out.print('\n'); } } }
29、假设输入 2 3 4 5 0. 下面代码的输出结果 是: sum is 12 count is 4 。 import java.util.scanner; public class test { public static void main(string[] args) { scanner input = new scanner(system.in); int number, sum = 0, count; for (count = 0; count < 5; count ) { number = input.nextint(); sum = number; } system.out.println("sum is " sum); system.out.println("count is " count); } }
30、编写一个程序,读取未确定个数数量的分数,并确定有多少分数高于或等于平均值,有多少分数低于平均值。输入负数表示输入结束。假设最多10个数。 import java.util.scanner; public class test { public static void main(string[] args) { double[] scores = new double[10]; double sum = 0; int count = 0; scanner input = new scanner(system.in); do { system.out.print("enter a new score: "); scores[count] = input. 【1】 ; if (scores[count] >= 0) sum = scores[count]; } while ( 【2】 >= 0); system.out.println("count is " count); double average = 【3】 ; int numofabove = 0; int numofbelow = 0; for (int i = 0; i < count - 1; i ) if (scores[i] >= average) 【4】 ; else 【5】 ; system.out.println("average is " average); system.out.println("number of scores above or equal to the average " numofabove); system.out.println("number of scores below the average " numofbelow); } }
31、编写一个程序,读取未确定个数数量的分数,并确定有多少分数高于或等于平均值,有多少分数低于平均值。输入负数表示输入结束。假设最多10个数。 import java.util.scanner; public class test { public static void main(string[] args) { double[] scores = new double[10]; double sum = 0; int count = 0; scanner input = new scanner(system.in); do { system.out.print("enter a new score: "); scores[count] = input. 【1】 ; if (scores[count] >= 0) sum = scores[count]; } while ( 【2】 >= 0); system.out.println("count is " count); double average = 【3】 ; int numofabove = 0; int numofbelow = 0; for (int i = 0; i < count - 1; i ) if (scores[i] >= average) 【4】 ; else 【5】 ; system.out.println("average is " average); system.out.println("number of scores above or equal to the average " numofabove); system.out.println("number of scores below the average " numofbelow); } }
32、编写一个程序,读取未确定个数数量的分数,并确定有多少分数高于或等于平均值,有多少分数低于平均值。输入负数表示输入结束。假设最多10个数。 import java.util.scanner; public class test { public static void main(string[] args) { double[] scores = new double[10]; double sum = 0; int count = 0; scanner input = new scanner(system.in); do { system.out.print("enter a new score: "); scores[count] = input. 【1】 ; if (scores[count] >= 0) sum = scores[count]; } while ( 【2】 >= 0); system.out.println("count is " count); double average = 【3】 ; int numofabove = 0; int numofbelow = 0; for (int i = 0; i < count - 1; i ) if (scores[i] >= average) 【4】 ; else 【5】 ; system.out.println("average is " average); system.out.println("number of scores above or equal to the average " numofabove); system.out.println("number of scores below the average " numofbelow); } }
33、编写一个程序,读取未确定个数数量的分数,并确定有多少分数高于或等于平均值,有多少分数低于平均值。输入负数表示输入结束。假设最多10个数。 import java.util.scanner; public class test { public static void main(string[] args) { double[] scores = new double[10]; double sum = 0; int count = 0; scanner input = new scanner(system.in); do { system.out.print("enter a new score: "); scores[count] = input. 【1】 ; if (scores[count] >= 0) sum = scores[count]; } while ( 【2】 >= 0); system.out.println("count is " count); double average = 【3】 ; int numofabove = 0; int numofbelow = 0; for (int i = 0; i < count - 1; i ) if (scores[i] >= average) 【4】 ; else 【5】 ; system.out.println("average is " average); system.out.println("number of scores above or equal to the average " numofabove); system.out.println("number of scores below the average " numofbelow); } }
34、编写一个程序,读取未确定个数数量的分数,并确定有多少分数高于或等于平均值,有多少分数低于平均值。输入负数表示输入结束。假设最多10个数。 import java.util.scanner; public class test { public static void main(string[] args) { double[] scores = new double[10]; double sum = 0; int count = 0; scanner input = new scanner(system.in); do { system.out.print("enter a new score: "); scores[count] = input. 【1】 ; if (scores[count] >= 0) sum = scores[count]; } while ( 【2】 >= 0); system.out.println("count is " count); double average = 【3】 ; int numofabove = 0; int numofbelow = 0; for (int i = 0; i < count - 1; i ) if (scores[i] >= average) 【4】 ; else 【5】 ; system.out.println("average is " average); system.out.println("number of scores above or equal to the average " numofabove); system.out.println("number of scores below the average " numofbelow); } }
35、写一个计算整数中数字总和的方法。使用以下方法标题: public static int sumdights(long n) 例如,sumdights(234)返回9(2 3 4)。提示:使用%运算符提取数字,使用/运算符删除提取的数字。例如,要从234中提取4,请使用234 % 10(=4)。要从234上删除4,请使用234/10(=23)。使用循环重复提取和删除数字,直到提取所有数字。编写一个测试程序,提示用户输入一个整数,并显示其所有数字的总和。补全程序代码空缺部分: public class test { public static void main(string[] args) { 【1】 input = new java.util.scanner(system.in); system.out.print("enter a number: "); int value = input.nextint(); system.out.println("the sum of digits for " value " is " 【 2 】 ); } public static int sumdigits(long n) { int temp = (int)math.abs(n); int sum = 0; while (temp != 0) { int remainder = 【 3 】 ; sum = remainder; temp = temp / 10; } 【4】 ; } }
36、写一个计算整数中数字总和的方法。使用以下方法标题: public static int sumdights(long n) 例如,sumdights(234)返回9(2 3 4)。提示:使用%运算符提取数字,使用/运算符删除提取的数字。例如,要从234中提取4,请使用234 % 10(=4)。要从234上删除4,请使用234/10(=23)。使用循环重复提取和删除数字,直到提取所有数字。编写一个测试程序,提示用户输入一个整数,并显示其所有数字的总和。补全程序代码空缺部分: public class test { public static void main(string[] args) { 【1】 input = new java.util.scanner(system.in); system.out.print("enter a number: "); int value = input.nextint(); system.out.println("the sum of digits for " value " is " 【 2 】 ); } public static int sumdigits(long n) { int temp = (int)math.abs(n); int sum = 0; while (temp != 0) { int remainder = 【 3 】 ; sum = remainder; temp = temp / 10; } 【4】 ; } }
37、写一个计算整数中数字总和的方法。使用以下方法标题: public static int sumdights(long n) 例如,sumdights(234)返回9(2 3 4)。提示:使用%运算符提取数字,使用/运算符删除提取的数字。例如,要从234中提取4,请使用234 % 10(=4)。要从234上删除4,请使用234/10(=23)。使用循环重复提取和删除数字,直到提取所有数字。编写一个测试程序,提示用户输入一个整数,并显示其所有数字的总和。补全程序代码空缺部分: public class test { public static void main(string[] args) { 【1】 input = new java.util.scanner(system.in); system.out.print("enter a number: "); int value = input.nextint(); system.out.println("the sum of digits for " value " is " 【 2 】 ); } public static int sumdigits(long n) { int temp = (int)math.abs(n); int sum = 0; while (temp != 0) { int remainder = 【 3 】 ; sum = remainder; temp = temp / 10; } 【4】 ; } }
38、写一个计算整数中数字总和的方法。使用以下方法标题: public static int sumdights(long n) 例如,sumdights(234)返回9(2 3 4)。提示:使用%运算符提取数字,使用/运算符删除提取的数字。例如,要从234中提取4,请使用234 % 10(=4)。要从234上删除4,请使用234/10(=23)。使用循环重复提取和删除数字,直到提取所有数字。编写一个测试程序,提示用户输入一个整数,并显示其所有数字的总和。补全程序代码空缺部分: public class test { public static void main(string[] args) { 【1】 input = new java.util.scanner(system.in); system.out.print("enter a number: "); int value = input.nextint(); system.out.println("the sum of digits for " value " is " 【 2 】 ); } public static int sumdigits(long n) { int temp = (int)math.abs(n); int sum = 0; while (temp != 0) { int remainder = 【 3 】 ; sum = remainder; temp = temp / 10; } 【4】 ; } }
02课前练习题1
1、java语言中的标识符是来为()、()和类命名。
2、java语言规定,标识符必须以()、下划线和()开头。
3、变量通常由三个要素组成,分别是()、()和变量值。
4、java变量类型可分为基本类型变量和()类型变量。
5、使用()类对象可以从键盘上读取数据,该类存放在()包中。
6、使用scanner类堆区一个整数的方法是(),读取一行文本的方法是()。
7、将字符转化为二进制表示的过程称为(),java语言使用()为字符编码。
8、字符型字面值用()将字符括起来,字符型变量使用()定义。
9、java语言表达式3.0/0的值为(),表达式-3.0/0的值为()。
10、java语言表达式3.0%0的值为(),表达式-3.0%0的值为()。
11、下面不是java关键字的是()。 a. main b. default c. import d. implements
12、下面不是java合法标识符的是()。 a. mygame b. _mygame c.$_mygame d. 2_mygame
13、下面表达式的值相等的是() a. 3/2 b. 3<2 c. 3 * 4 d. 3<<2 e.3*2^2 f. 3>>>2
14、下面代码输出结果是()。 int op1=51; int op2=-16; system.out.println("op1^op2=" (op1^op2)); a. op1^op2=11000011 b. op1^op2=67 c. op1^op2=-61 d. op1^op2=35
15、下面程序输出结果是()。 public class test{ public static void main(string[] args){ int i=0xfffffff1; int j=~i; system.out.println("j= " j); } } a. 0 b. 1 c. 14 d. -15 e. 第3行产生编译错误 f. 第4行产生编译错误
2、程序填空题 从键盘接收10个整数,比较并输出最大值和最小值。 【1】 java.util.scanner; public class tennum{ public static 【2】 main(string[] args){ scanner sc=new scanner(system.in); system.out.println("请输入第1个整数:"); int max=sc.nextint(); int min=max; for(int i=;i<=10;i ){ system.out.println("请输入第" i "个整数:"); 【3】 ; if(num>max) max=num; 【4】 ; system.out.println("max=" max); system.out.println("min=" min); } }
3、程序填空题 从键盘接收一个十进制数,把其转化为二进制数并输出。 inmport java.util.scanner; public class tobinary{ public static void main( 【1】 ){ string s=""; int n=0; scanner input=new scanner( 【2】 ); system.out.println("请输入1个整数:"); 【3】 =input.nextint(); while(n>0){ s=( 【4】 ) s 【5】 =n/2; } system.out.println("s=" s); }
03 类与对象
03作业1
1、定义类使用的关键字是()
2、创建一个类的对象使用的关键字(),调用的是()。
3、如果一个方法的返回值不是void,则方法体中必需包含()语句
4、假设有个student类,其无参构造方法的代码是()
5、要使一个变量是静态变量,应该使用关键字()
6、实例变量能否使用类名调用()
7、1、下面的类定义,与amethod()方法不属于重载的是() public class myclass{ public float amethod(float a,float b){ return 0; } } a、 public int amethod(int x,int y){} b、 public float amethod(float x,int y){} c、 public float amethod(float x,float y){} d、 public void amethod(float x,float y,float z){}
8、2、下面的类定义,与myclass()方法不属于重载的是() public class myclass{ public myclass(int x,int y,int z){ } } a、 myclass(){} b、 protected int myclass(){} c、 private myclass( int a,in b,double c){} d、 public myclass( byte x,byte y){}
9、关于实例变量、静态变量、实例方法和静态方法,下面叙述不正确的是()。 a.实例方法可以访问实例变量和静态变量 b.静态方法不能访问实例变量 c .实例变量和静态变量都可以通过类名访问 d.静态方法只能访问静态变量
2、设有circle类,执行下面语句后,可被垃圾回收器回收的对象是()。 circle a = new circle(); circle b= new circle(); circle c = new circle(); a = b; a = c; c= null; a、 原来a所指的对象 b、 原来b所指的对象 c、 原来b和c所指的对象 d、 原来c所指的对象
3、下列代码输出的结果是 。 public class staticdemo { static int x =100; static { x = 48; } public staticdemo(){ x =88; } public static void main(string[] args) { system.out.println("x=" x); } } a、 100 b、 48 c、 88 d、 以上都不对
4、下面程序运行结果为 。 public class vartest{ private int x=1; private int y=1; private int z=1; void changevar(int a,int b,int c){ x=a; int y = b; int z = 9; system.out.println("in changvar : " "x = " x " y =" y " z =" z); this.z=c; } string getxyz(){ return "x = " x " y =" y " z =" z; } public static void main( string args[] ){ vartest v=new vartest(); system.out.println("before changvar : " v.getxyz()); v.changevar(10,10,10); system.out.println("after changevar: " v.getxyz()); } } a、 before changvar : x = 1 y =1 z =1 in changvar : x = 10 y =10 z =10 after changevar: x = 10 y =1 z =10 b、 before changvar : x = 1 y =1 z =1 in changvar : x = 10 y =10 z =9 after changevar: x = 10 y =10 z =10 c、 before changvar : x = 1 y =1 z =1 in changvar : x = 10 y =1 z =9 after changevar: x = 10 y =1 z =10 d、 before changvar : x = 1 y =1 z =1 in changvar : x = 10 y =10 z =9 after changevar: x = 10 y =1 z =10
5、下列程序的输出结果是 : public class test { static void leftshift(int i, int j) { i<<=j; system.out.println("i=" i " j=" j); } public static void main(string[] args) { int i =4; int j=2; leftshift(i,j); system.out.println("i=" i); } }
6、下列程序输出的结果是: public class myclass { private static int a=100; public static void main(string[] args) { modify(a); system.out.println("a_out=" a); } public static void modify(int a) { a ; system.out.println("a_in=" a); } }
7、1、下面数组声明并初始化正确的是() a、 int arr[]; b、 int arr[5]; c、 int arr[]={1,2,3,4,5}; d、 int arr[5]={1,2,3,4,5};
4、1、已知s1、s2、s3由如下语句定义: string s1="welcome to java"; string s2="programming is fun"; string s3="welcome to java"; 下面表达式的结果是 (1)s1==s3; ① (2)s2.length(); ② (3)s1.equals(s2); ③ (4)s1.compareto(s2); ④ (5) s3.charat(12); ⑤ (6)s3.substring(11); ⑥ (7)s1.concat(s2); ⑦ (8)s3.contains("java"); ⑧ (9)s1.indexof("to"); ⑨ (10) "\thello\t".trim().length(); ⑩
5、已知s1、s2由如下语句定义: stringbuilder s1=new stringbuild("welcome to java"); stringbuilder s2=new stringbuild("html"); 下面表达式独立执行后的相应的s1、s2的结果是 (1)s1.append(s2); ① (2)s1.delete(8,10); ② (3)s1.deletecharat(8); ③ (4)s1.replace(11,15,"html"); ④ (5) s1.setcharat(0,'h'); ⑤ (6)s2.reverse(); ⑥ (7)s1.substring(3,7); ⑦ (8)s1.append(s2).length(); ⑧
6、1、阅读下面程序填空: ① ; public calsss stringdemo{ public static void main(string[] args){ string s; scanner input = new scanner( ② ); system.out.println("请输入一个字符串:"); s = input.nextline(); system.out.println("字符串的长度是:" s. ③ ); system.out.println("字符串第一个字符是是:" s. ④ ); system.out.println("字符串最后一个字符是:" s. ⑤ );
7、编写一个方法,统计一个字符串中包含字母的个数: public static int countletters(string s){ int n=0; for(int i=0;i< ① ;i ){ char c= ② ; if(c>='a'&&c<='z' || ③ ) n=n 1 } ④ ; }
8、编写一个方法,将十进制数转换为二进制数的字符串 public static string tobinary(int value){ string=""; while(value!=0){ int r = value ① ; s = r s; value = ② ; } ③ ; }
9、编写一个方法,返回排好序的字符串。例如。调用sort("morning"),返回"gninrom" public static string sort(string s){ char[] ch = s. ① ; for(int i=0;i< ② ;i ){ for(int j=i 1;j< ③ ;j ){ if(ch[i]>ch[j]){ char t= ch[j]; ch[j] = ④ ; ch[i]=t; } } } string str=new string( ⑤ ); ⑥ ;
10、编写一个加密程序,要求从键盘输入一个字符串,然后输出加密后的字符串。加密规则是对每个字母转换为下一个字母表示,原来是a转换为b,原来是b转换为c。小写的z转换为小写的a,大写的z转为大写的a。 ① ; public class encrupt{ public static void main(string[] args){ scanner sc = new scanner( ② ); system.out.println("请输入一个字符串:"); string str =sc.nextline(); system.out.println("原字符串是:" str); stringbuilder ss = new stringbuilder(str); for(int i=0;i< ③ ;i ){ char c = ss.charat(i); if(c=='z' || c=='z'){ c = ④ ; }else{ c = ⑤ ; } ss.setcharat( ⑥ ); } system.out.println("加密后的字符串是:" ss); } }
03作业_封装继承与多态
1、1、下面的类定义,与amethod()方法不属于重载的是() public class myclass{ public float amethod(float a,float b){ return 0; } } a、 public int amethod(int x,int y){} b、 public float amethod(float x,int y){} c、 public float amethod(float x,float y){} d、 public void amethod(float x,float y,float z){}
2、下面的类定义,与myclass()方法不属于重载的是() public class myclass{ public myclass(int x,int y,int z){ } } a、 myclass(){} b、 protected int myclass(){} c、 private myclass( int a,in b,double c){} d、 public myclass( byte x,byte y){}
3、有下面类的定义: class super{ public float getnum(){ return 3.0f; } } public class sub extends super{ ; } 下面方法放在画线处会发生编译错误的是() a、 public float getnum(){return 4.0f;} b、 public void getnum(){} c、 public void getnum(double d){} d、 public double getnum(float x){return 4.0d;}
4、下面方法声明正确但不能被子类重写的是()。 a. final void methoda(){} b. void final methoda(){} c.static void methoda(){} d.static final void methoda(){} e.final abstract void methoda(){} a、 a和b b、 a和c c、 a、c、d d、 a、b、d e、 a、b、c、d、e
5、class super{ public int i =0; public super(string text){ i =1; } } public class sub extends super{ public sub(string text){ i = 2; } public static void main(string[] args){ sub sub = new sub("hello"); system.out.println(sub.i); } } a、 该程序不能编译成功 b、 编译成功,输出0 c、 编译成功输出1 d、 编译成功输出2
6、给定下面两个方法的定义: ①public static double method(double x,double y) ②public static double method(int x,double y) 对于下面的给出的语句,(在横线上填写序号) (1)double z = method(4,5)调用上述方法中的 ; (2)double z = method(4,5.5)调用上述方法中的 ; (3)double z = method(4.5,5.5)调用上述方法中的 ;
7、下列程序代码运行结果是 。 class parent{ void printme(){ system.out.println("i am parent"); } } class child extends parent{ void printme(){ system.out.println("i am child"); } void printall(){ super.printme(); this.printme(); printme(); } } public class test{ public static void main(string[] args){ child myc=new child(); myc.printall(); } }
8、class animal{ public animal(){ system.out.println("i'm a bird."); } } public class bird extends animal{ public bird(){ system.out.println("i'm a bird."); } public static void main(string[] args){ bird b = new bird(); } }
9、class employee{} class manager extends employee{ public string tostring(){ return "i'm a manager."; } } a、 manager boss = new manager(); employee stuff = boss; manager myboss = (manager)stuff; b、 employee stuff = new employee(); manager boss = (manager)stuff; c、 employee stuff = new manager(); manager boss = stuff; d、 manger stuff = new employee(); manager myboss = (manager)stuff;
11、下面程序代码的输出结果是 。 class employee{} class manager extends employee{} class secretary extends employee{} class programmer extends employee{} public class test{ public static void show(employee e){ if(e instanceof manager) system.out.println("he is a manager."); else if(e instanceof secretary) system.out.println("he is a secretary."); else if(e instanceof programmer) system.out.println("he is a programmer."); } public static void main(string[] args){ manager m = new manager(); secretary s = new secretary(); programmer p = new programmer(); show(m); show(s); show(p); } }
12、下面程序代码的输出结果是 。 abstract class aa{ abstract void callme(); void metoo(){ system.out.println("inside aa's metoo()."); } } class bb extends aa{ void callme(){ system.out.println("inside bb's callme()."); } void metoo(){ system.out.println("inside bb's metoo()."); } } public class abstracttest{ public static void main(string[] args){ aa aa = new bb(); aa.callme(); aa.metoo(); } }
1、下面是一个接口的定义,在第2行前面可以插入的合法修饰符是() public interface status{ /*此处插入代码*/int my_value = 10; } a.final b. static c. public d. private e. abstract f. protected a、 a b c b、 a c e c、 b c e d、 c d f
4、阅读下面程序,补全代码并给出程序的输出结果。 import java.util.function.function; public class functiondemo { public static void main(string[] args) { function milestokms = ① -> 1.6 * input; int miles = 3; double kms = milestokms.apply( ② ); system.out.printf("%d miles = %3.2f kilometers\n",miles, kms); } } 程序输出结果: ③
5、阅读下面程序,补全代码并给出程序的输出结果。 import java.util.comparator; public class lambdademo { public static void main(string[] args) { string [] names = {"shanghai", "guangzhou", "beijing", "london"}; arrays.sort(names, ① ->b.compareto(a) ); for(string n : ② ) { system.out.println(n); } 输出结果: ③
6、阅读下面程序,补全代码并给出程序的输出结果。 import java.util.function.predicate; public class predicatedemo { public static void main(string[] args) { predicate numbersonly = ① -> { for (int i = 0; i < ② ; i ) { char c = input.charat(i ); if ("0123456789".indexof(c) == -1) { return false; } } return true; }; system.out.println(numbersonly.test("12345")); system.out.println(numbersonly.test("100a")); } } 输出结果: ③
7、阅读下面程序,补全代码并给出程序的输出结果。 import java.util.function.consumer; import java.util.function.function; public class consumerdemo { public static void main(string[] args) { function spacer = ① -> { stringbuilder sb = new stringbuilder(count); for (int i = 0; i < ② ; i ) { sb.append(" "); } return sb. ③ ; }; int linelength = 60; // 每行最大字符串 consumer printcentered = (input) -> { int length = input.length(); string spaces = spacer.apply((linelength - length) / 2); system.out.println(spaces input); }; printcentered.accept("a lambda expression a day"); printcentered.accept("makes you"); printcentered.accept("look smarter"); } } 输出结果: ④
8、阅读程序给出程序的运行结果。 interface aa{ int status = 100; public abstract void display(); } interface bb{ public abstract void show(); public default void print() { system.out.println("这是接口bb的默认方法"); } } interface cc extends aa,bb{ int num = 3; } public class dd implements cc { public void display() { system.out.println("接口aa的display方法"); } public void show() { system.out.println("接口bb的show方法"); } public static void main(string[] args) { dd dd = new dd(); system.out.println(dd.status); dd.show(); dd.print(); aa aa = new dd(); aa.display(); } } 输出结果:
04 泛型与集合
4作业_泛型与集合1
1、如果要求其中不能包含重复的元素,下面结构最适合存储的是() a、 collection b、 list c、 set d、 map e、 vector
2、下面程序输出结果为() import java.util.arraylist; import java.util.collections; public class sortof { public static void main(string[] args) { arraylist a = new arraylist(); a.add(1); a.add(5); a.add(3); collections.sort(a); a.add(2); collections.reverse(a); system.out.println(a); } } a、 [1, 2, 3, 5] b、 [2, 1, 3, 5] c、 [1, 5, 3, 2] d、 [2, 5, 3, 1]
3、阅读程序补全程序代码,并给出程序的输出结果。 import java.util.arrays; import java.util.list; public class lambda_demo { public static void main(string[] args) { string[] names = { "jiangsu", "changzhou", "changzhoudaxue", "java", "lambda" }; list arrnames = arrays.aslist(names); // 传统的循环方式 system.out.println("传统的循环方式输出:"); for (string name : arrnames) { system.out.println(name); } system.out.println("--------------------------"); // 在 java 8 中使用 lambda表达式输出 system.out.println("使用 lambda表达式输出:"); arrnames.foreach( ① ); system.out.println("--------------------------"); // 在 java 8 中使用双冒号操作符:: arrnames.foreach( ② ); } } 输出结果为: ③
4、阅读下面程序补全程序代码,并给出输出结果。(备注⑤⑥空格不能填相同代码) import java.util.*; class cage extends linkedlist{}; class animal{ public void feedme(){ }; } class lion extends animal{ public void feedme(){ system.out.println("feeding lions"); } } class butterfly extends animal{ public void feedme(){ system.out.println("feeding butterflies"); } } public class wildcardtest{ public static void main(string args[]){ wildcardtest t = new wildcardtest(); cage lioncage = ① ; cage butterflycage = ② ; lioncage.add(new ③ ); butterflycage.add(new ④ ); t.feedanimals( ⑤ ); t.feedanimals( ⑥ ); } void feedanimals(cage somecage) { for (animal a:somecage) a.feedme(); } } 输出结果为: ⑦ 。
5、阅读程序给出下面程序的输出结果 。 class mybox { private t t; public void add(t t) { this.t = t; } public t get() { return t; } public void inspect(u u){ system.out.println(" t: " t.getclass().getname()); system.out.println(" u: " u.getclass().getname()); system.out.println(); } } public class myboxofgenerictype_demo{ public static void main(string args[]){ mybox abox; abox = new mybox(); abox.add(new integer(1000)); integer i = abox.get(); system.out.println("the integer is : " i); system.out.println("the first inspection is : "); abox.inspect("some text"); system.out.println("the second inspection is : "); abox.inspect(new double(100.0)); } }