Java基础作业详解及答案
Java基础练习题 附答案

11)以下程序的输出结果为
publicclasstest{
publicstaticvoidmain(Stringagrs[]){
charc1=’B’,c2=’C’;
if(c1+1<c2)++c1;
}
}
A.BB.bC.CD.c
12)假设a是int类型变量,并初始化为1,则下列哪个为合法的条件语句?
}
}
A.0B.1 C.5D.4E.24
2)设有如下类
classLoop{
publicstaticvoidmain(String[]agrs){
intx=0;inty=0;
outer:
for(x=0;x<100;x++){
middle:
for(y=0;y<100;y++){
y="+y);
if(y==10){<<<insertcode>>>}
B.第9行出现运行错误;
C.输出True
D.输出False
8)以下程序的编译和运行结果为?
classtest{
staticbooleancheck;
publicstaticvoidmain(Stringargs[]){
inti;
if(check==true)
i=1;
else
i=2;
if(i=2)i=i+2;
E.publicstaticbooleanmain(Stringa[]);
2)编译和运行以下代码的结果为:
publicclassMyMain{
java基础(附答案)

java基础(附答案)JAVA程序设计基础考试试题1、下面()是合法的Java变量名。
(多选)A _myStringB $a+bC myStringD String2、阅读下列代码,i值为()时输出结果中不包括―Test2‖。
(单选)switch(i){default: System.out.println("无匹配");case 1:System.out.println("Test1");case 2:case 3:System.out.println("Test2");break;case 4:System.out.println("Test3");break;}A. 0B. 1C. 2D. 3E. 43、下面哪些是短整型short的取值范围:A.-27——27-1B.0 ——215C.–215—— 215-1D.–231——231-14、Main()方法的返回类型是:A intB voidC booleanD static5、指出正确的表达式A.byte=128;B.Boolean=null;C.long l=0xfffL;D.double=0.9239d;6、假设val是整型变量,下面()说法不正确。
(单选)if(val > 4){System.out.println("T est A");}else if(val > 9){System.out.println("T est B");}else {System.out.println("T est C");}A.val = 0输出“Test C”B.val介于0到4 之间输出“Test C”C.val = 14输出“Test B”D.val = 5 输出“Test A”7、下面关于数据类型的描述正确的是()a) 数据类型就是数据的表现形式b) 所有数据的数据类型都是一致的c) 数据类型就是用于表示不同的数据在内存中所分配空间的大小d) 以上答案都不正确8、阅读下面代码,myMethod被调用时,正确的输出结果是()。
java基础练习及参考答案

java基础练习及参考答案java基础练习编程结构:1.如果一个数从左边念和从右边念都就是同一个数,就称作回文数.比如:686就是一个回文数.编程找到1000以内所有的回文数.packagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){inti,n,m,count=0;system.out.p rintln(\);for(i=1;i<=1000;i++){n=i;m=0;while(n!=0){m=m*10+n;n/=10;}if(m==i){sy stem.out.println(m);count++;}}}}2.一位妇女在河边洗碗.邻居们问:\家里去了多少个客人?\她提问:\每两个客人氰化钠一个菜碗,每三个客人氰化钠一个汤碗,每四个客人氰化钠一个饭碗,共用碗65个\反问共去了多少客人?packaget1;publicclasst2{publicstaticvoidmain(stringargs[]){intx=0;while(x<65){inti=x/2;i ntj=x/3;intm=x/4;if(i+j+m==65){system.out.println(x);}x++;}}}字符串:1/51.给定一个字符串“abc123abc”,求:1)将字串全部转为大写abc123abcpackagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){stringstr=\;stringstr1=str.to uppercase();system.out.println(str1);}}2)截取字串的前3个字符abcpackagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){stringstr=\;stringa[]=str.split(\);system.out.println(a[0]);}}3)去掉字符中两头的空格abc123abcpackagetext01;publicclasst2{publicstaticvoidmain(string[]args){stringstring=\;string=mytrim( string);system.out.println(\+string+\);}publicstaticstringmytrim(stringstring) {intstart=0;intend=string.length()-1;while(start<=end&&string.charat(start)==''){start++;}while(start<=end&&strin g.charat(end)==''){end--;}returnstring.substring(start,end+1);}}4)搜寻字母a发生的边线6packagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){stringstr=\;system.out.println(str.indexof(\));}}2.取值一个字符串“helloworld.”,将字符串间的空格换成.2/5(提示信息:需用replaceall或循环方式处置)。
《Java基础入门》_课后习题答案大一计算机专业4

《Java基础入门》课后习题答案第4章面向对象(下)一、填空题1、一个类如果实现一个接口,那么它就需要实现接口中定义的全部方法,否则该类就必须定义成抽象类。
2、一个类可以从其他的类派生出来。
派生出来的类称为子类、用于派生的类称为父类或者基类。
3、定义一个Java 类时。
如果前面加使用final 关键词修饰,那么该类不可以被继承。
4、在Java语言中,所有的类都直接或间接继承自Object 类5、一个Lambda 表达式由三个部分组成,分别为参数列表、“->”、表达式主体二、判断题1、错2、对3、错4、对5、错1.抽象方法必须定义在抽象类中,所以抽象类中的方法都是抽象方法。
(×)2. Java 中被final 关键字修饰的变量,不能被重新赋值。
(√)3.不存在继承关系的情况下,也可以实现方法重写。
(×)4.函数式接口在Java中是指有且仅有一个抽象方法的接口。
(√)5.接口中只能定义常量和抽象方法。
(×)三、选择题1、B2、ABC3、C4、C5、A1.在类的继承关系中,需要遵循以下哪个继承原则?(B)A.多重B.单一C.双重D.不能继承2.关于super关键字以下说法哪些是正确的?(多选)(ABC)A. super 关键字可以调用父类的构造方法B.super 关键字可以调用父类的普通方法C. super 与this 不能同时存在于同一个构造方法中D. super 与this 可以同时存在于同一个构造方法中3.类中的一个成员方法被下面哪个修饰符修饰,该方法只能在本类被访问?(C)A. publicB. protectedC. privateD. default4.在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?(C)A. inheritsB. implementsC.extendsD. modifies5.已知类的继承关系如下:class Employee;class Manager extends Employeer class Director extends Employee;则以下语句能通过编译的有哪些?(A)A.Employee e=new Manager();B. Direetor d=new Manager();B.C. Director d=new Employee(); D. Manager menew Director();四、简答题1.简述什么是方法重写2.简述什么是多态。
我的java基础题和答案详解

我的java基础题和答案详解if语句相关训练1.(标识符命名)下面几个变量中,那些是对的?那些是错的?错的请说明理由(cdf)a.ilovejavab.$20********************.leee.hello_worldf.2tigers答:标识符中不能有@,不能含有点号,开头只能是字母和$publicstaticvoidmain(stringargs[]){system.out.println(\}}问:1)假设这个代码存在hello.java文件中,那这个程序能够编译通过?为什么?如果编译不通过,应该如何改进?答:不能,含有public的类文件名必须要和类名一致;应将hello.java改写成helloworld.java2)假设这个.java文件放在c:\\javafile\\目录下,classpath=.,则生成的.class文件应该放在什么目录下?如何运行?答:.class应该存放在c:\\javafile\\目录下3.(if语句)初始化一个整数,推论其就是奇数还是偶数publicclasstest{intn;if(n%2==0){system.out.println(n+“是偶数”);}else{system.out.println(n+“就是奇数”);}}4.(操作符)有如下代码:inta=5;intb=(a++)+(--a)+(++a);问执行完之后,b的结果是多少?请问:16解析a先把5赋值给b使后再自减1相等于(b=5+(--6)+(++5))15.(基本类型的运算)一家商场在举办折扣降价,所有商品都展开8八折优惠。
一位程序员把这个逻辑译成:shortprice=...;//先排序出来原价shortrealprice=price*8/10;//再计算出打折之后的价格问:这段代码与否恰当?如果恰当,假设price为100,那排序之后的realprice值多少?如果不恰当,必须怎么废止?答:不正确,应为int类型不能自动转换成short类型应该为:publicclassdiscounttest{publicstaticvoidmain(string[]args){shortprice=100;shortrealprice=(short)(price*8/10);system.out.println(realprice);}}6题忽略7.(操作符)有如下代码:a=(a>b)?a:b;答这段代码顺利完成了什么功能。
java基础题(附答案)

java基础题(附答案)基础编程练习,能做几道初学java程序看得懂,但下不了手,高手们说只能多练习,所以找了这些题,是从java私塾跟我学系列课后习题中挑选的一部分,大家一起来做做吧,看看能做多少。
【1】将1 到1000 之间的奇数打印出来。
【2】判断一个数能否同时被3和5 整除。
【3】输入10个数,找出最大一个数,并打印出来。
【4】给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’。
90 分以上为’A’,80~89 分为’B’,70~79 分为’C’,60~69 分为’D’,60分以下为’E’。
【5】把一个正整数分解质因数。
【6】打印出如下图案(菱形)*************************【7】请编写一个方法实现如下功能:将1至7 的数字转换为星期日到星期六的字符串。
【8】请编写一个方法实现如下功能:有任意三个整数a,b,c,请输出其中最大的【9】请编写一个方法实现如下功能:将任意三个整数a,b,c按从小到大的顺序输出。
【10】请编写一个方法实现如下功能:用程序找出每位数的立方和等于该数本身值的所有的3 位数。
(水仙花数)【11】请编写一个方法实现如下功能:计算1 加到n (n>=2的整数)的总和。
【12】请编写一个方法实现如下功能:得到一个整数的绝对值。
【13】定义一个长度为10 的一维字符串数组,在每一个元素存放一个单词;然后运行时从命令行输入一个单词,程序判断数组是否包含有这个单词,包含这个单词就打印出“Yes”,不包含就打印出“No”【14】生成一百个随机数,放到数组中,然后排序输出。
【15】统计字符串中英文字母、空格、数字和其它字符的个数。
【16】写一个方法,功能:定义一个一维的int数组,长度为3,把任意三个整数a,b,c赋值给数组,然后将它们按从小到大的顺序输出(使用冒泡排序)【17】有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
java基础入门课后习题答案

java基础入门课后习题答案Java基础入门课后习题答案Java是一门广泛应用于软件开发领域的编程语言,掌握Java的基础知识对于想要从事软件开发的人来说是非常重要的。
在学习Java的过程中,课后习题是巩固知识和提高编程能力的重要途径。
本文将为大家提供一些Java基础入门课后习题的答案,希望能够对大家的学习有所帮助。
一、基础语法题1. 编写一个Java程序,输出"Hello, World!"。
```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```2. 编写一个Java程序,计算并输出1到100之间所有偶数的和。
```javapublic class SumOfEvenNumbers {public static void main(String[] args) {int sum = 0;for (int i = 2; i <= 100; i += 2) {sum += i;System.out.println("1到100之间所有偶数的和为:" + sum); }}```3. 编写一个Java程序,判断一个数是否为素数。
```javapublic class PrimeNumber {public static void main(String[] args) {int num = 17;boolean isPrime = true;for (int i = 2; i <= Math.sqrt(num); i++) {if (num % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(num + "是素数");} else {System.out.println(num + "不是素数");}}```二、面向对象题1. 编写一个Java类,表示一个学生,包含学生的姓名和年龄,并提供获取和设置姓名、年龄的方法。
《Java基础入门》课后题答案

《Java基础入门》习题答案第1章Java开发入门一、填空题1、Java EE、Java SE、Java ME2、JRE3、javac4、bin5、path、classp ath二、选择题1、ABCD2、C3、D4、B5、B三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。
2、JRE(Java Runtim e Enviro nment,Java运行时环境),它相当于操作系统部分,提供了Jav a程序运行时所需要的基本条件和许多Jav a基础类,例如,IO类、GUI控件类、网络类等。
JRE是提供给普通用户使用的,如果你只想运行别人开发好的Jav a程序,那么,你的计算机上必须且只需安装JRE。
JDK(Java Develo pment Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Ja va开发人员使用的。
初学者学习和使用Jav a语言时,首先必须下载和安装JD K。
JDK中已经包含了JR E部分,初学者安装J DK后不必再去下载和安装JRE了。
四、编程题public classHelloW orld{public static void main(String[] args) {System.out.println("这是第一个J ava程序!");}}第2章Java编程基础一、填空题1、class2、true和false3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、1、2、4、86、& && | ||7、08、59、3410、56二、判断题1、错2、对3、错4、对5、错三、选择题1、AD2、AD3、C4、ABCD5、C 6 、A 7、AC 8、A 9、B 10、A四、程序分析题1、编译不通过。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java基础语句作业详解及答案1.编写程序,用数组实现乘法小九九的存储和输出。
【提示:采用多个一维数组。
】public class Multipation {public static void main(String[] args) {// TODO Auto-generated method stubint x[][]=new int[9][9];for(int i=0;i<9;i++){for(int j=0;j<9;j++){if(i>=j){int m=i+1;int n=j+1;x[i][j]=m*n;System.out.print(m+"*"+n+"="+x[i][j]);}}System.out.println();}}}2. 定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。
SetRecord给出学号、姓名和成绩的赋值,GetRecord通过学号得到考生的成绩。
public class Student {/***@param args*/private int ID;private String name;private float score;public void SetRecord(int ID,String name,float score){this.ID=ID;=name;this.score=score;}public float getRecord(int ID){if(ID==this.ID)return this.score;elsereturn -1;}public static void main(String[] args) {// TODO Auto-generated method stubStudent s=new Student();s.SetRecord(0,"alex",100);float Sco=s.getRecord(0);System.out.print(Sco);}}3.给出上题中设计类的构造函数,要求初始化一条记录(学号、姓名、成绩)。
4.public class Student {5.6./**7.*@param args8.*/9.private int ID;10.private String name;11.private float score;12.13.Student(int ID,String name,float score){14.this.ID=0;="666";16.this.score=65;17.}18.public void SetRecord(int ID,String name,float score){19.this.ID=ID;=name;21.this.score=score;22.}23.public float getRecord(int ID){24.if(ID==this.ID)25.return this.score;26.else27.return -1;28.}29.30.public static void main(String[] args) {31.// TODO Auto-generated method stub32.Student s=new Student(0,"sdfs",12);33.//s.SetRecord(0,"alex",100);34.float Sco=s.getRecord(0);35.System.out.print(Sco);36.}37.}4. 编写程序,测试字符串“你好,欢迎来到Java世界”的长度,将字符串的长度转换成字符串进行输出,并对其中的“Java”四个字母进行截取,输出截取字母以及它在字符串中的位置。
public class StringTest {/***@param args*/public static void main(String[] args) {// TODO Auto-generated method stubString str="你好,欢迎来到Java世界";int length=str.length();char [] stringArr = str.toCharArray();//System.out.print(stringArr);for(int i=0;i<length;i++){//System.out.print(stringArr[i]);//System.out.print(stringArr[0]);if('J'==stringArr[i]){System.out.print(i);}}}}1. 自己设计一个坐标类,能提供以下方法如求当前坐标和其他坐标之间的距离等方法,要求所有变量为私有变量,并提供两个构造函数。
public class XYdistance {private int x;private int y;XYdistance(){setX(0);setY(0);}public void setX(int x) {this.x = x;}public int getX() {return x;}public void setY(int y) {this.y = y;}public int getY() {return y;}public static void main(String[] args) {// TODO Auto-generated method stubXYdistance m_1= new XYdistance();m_1.setX(10);m_1.setY(10);XYdistance m_2= new XYdistance();doubledistance=(m_1.getX()-m_2.getX())*(m_1.getX()-m_2.getX())+(m_1.getY()-m_2.getY())*(m_1.getY()-m_2.getY());double result=Math.sqrt(distance);System.out.println(result);}}编写使用静态变量统计一个类产生的实例对象的个数的程序?public class Static {private static int number;public Static(){//number=number+1;++number;//System.out.println(++number);}public static void main(String[] args) { // TODO Auto-generated method stubnew Static();//m_1.Static();System.out.println(Static.number);}}创建string对象过程的内存分配:常量池(Constant Pool):指的是在编译期被确定,并被保存在已编译的.class 文件中的一些数据。
JVM虚拟机为每个被装载的类型维护一个常量池。
常量池就是该类型所用到常量的一个有序集和,包括直接常量(String,Integer和Floating point常量)和对其他类型,字段和方法的符号引用。
对于String常量,它的值是在常量池中的。
而JVM中的常量池在内存当中是以表的形式存在的,对于String类型,有一张固定长度的CONSTANT_String_info表用来存储文字字符串值,注意:该表只存储文字字符串值,不存储符号引用。
1、String s = "abc";创建过程分析:在class文件被JVM装载到内存中,JVM会创建一块String Pool (String缓冲池)。
当执行String s = “abc”;时,JVM首先在String Pool 中查看是否存在字符串对象“abc”(如何查看呢?用equals()方法判断),如果已存在该对象,则不用创建新的字符串对象“abc”,而直接使用String Pool 中已存在的对象“abc”,然后将引用s指向该对象;如果不存在该对象,则先在String Pool中创建一个新的字符串对象“abc”,然后将引用s指向String Pool中创建的新对象。
注意:使用“字符串常量”引号创建的字符串对象时,在编译期就已经确定将该对象存储到String Pool中了。
因此,String s = “abc”只会在编译期,在String Pool中创建一个对象。
例如:Java代码1.String s1 = "abc";2.String s2 = "abc";3.System.out.println(s1 == s2);//true结果说明:JVM创建了两个引用str1和str2,但在String Pool中只创建了一个对象,而且两个引用都指向了同一个对象。
2、String s = new String("abc");创建过程分析:当执行String s = new String(“abc”);时,JVM首先在String Pool中查看是否存在字符串对象“abc”,如果不存在该对象,则先在String Pool中创建一个新的字符串对象“abc”,然后执行new String(“abc”)构造方法,在Heap里又创建一个新的字符串对象“abc”(new出来的对象都放在Heap 里面),并将引用s指向Heap中创建的新对象;如果已存在该对象,则不用创建新的字符串对象“abc”,而直接使用String Pool中已存在的对象“abc”,然后执行new String(“abc”)构造方法,在Heap里又创建一个新的字符串对象“abc”,并将引用s指向Heap中创建的新对象。
注意:使用new String(“”)创建的字符串对象时,会在运行期创建新对象存储到Heap中。
因此,new String(“abc”)创建字符串对象时,会创建2个对象,编译期在String Pool中创建一个,运行时Heap中创建一个。
这里使用了Java代码1.public String(String original)这个构造方法,作用:初始化一个新创建的String对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。