**java
**
(1) 流程控制语句的做用是什么,分为哪几类?web
答:流程控制语句是用来控制程序中各语句执行顺序的语句。分为顺序结构、选择结构循环结构算法
(2) 一个系统,本质上都是由什么组成的?dom
答:本质上都是有“变量、选择语句、循环语句”组成。svg
**函数
**
(1) 选择结构分为哪几种?设计
if但选择结构、if-else双选结构、if-else-if-else多选择结构、switch结构3d
(2) 单选择结构的语法结构是什么样的,请书写出来code
if(布尔表达式){xml
语句块
}
(3) Math.random()函数的做用是什么?
产生[0,1)之间的随机数,包括0,但不包括1
**
**
(1) If else双选择结构的语法结构是什么样的?请书写出来
if(布尔表达式){
语句块
}else{
语句块
}
例如:
if(a>b) { System.out.println("a>b"); }else { System.out.println("a!>b"); }
**
**
(1) 多选择结构的语法结构是什么样的?适用什么场景?
if(布尔表达式){
语句块
}else if(布尔表达式){
语句块
}else{
语句块
}
例如:
if (a>b) { System.out.println("a>b"); }else if(a==b){ System.out.println("a==b"); }else { System.out.println("a<b"); }
**
**
(1) Switch的使用场景是什么?语法格式是什么样的?
用来作多值判断时使用。
switch(表达式){
case 值1:
语句序列1;
[break;]
case 值2:
语句序列2;
[break;]
.
.
.
[default:
语句序列n;
break;]
}
例如: switch (a) { case 1: System.out.println(1); break; case 2: System.out.println(2); default://default无关紧要,若是有,前面没有和a匹配的,则默认执行default System.out.println("NO"); break; }
(2) 判断布尔值的时候能使用switch么?
不能,判断时只能使用字符串(jdk1.7之后)、整型、枚举(emun)、字符型。
(3) Break的做用是什么?case能穿透么?
Break的终止程序,后面的代码不执行。若是case后面没有break会致使case穿透,一直有break为止
例如执行下面程序:
int a = 2; switch (a) { case 1: System.out.println(1); case 2: System.out.println(2); case 3: System.out.println(3); case 4: System.out.println(4); default: System.out.println("default"); }
执行结果:
**
**
(1) 循环结构主要分为哪两类?
一类是当型,另外一类是直到型
当型:当布尔表达式条件为true时,反复执行某块语句,当布尔表达式的值为false时才终止循环。好比:while和for循环。
直到型:先执行某语句,再判断布尔表达式,若是为true,再执行某语句,如此反复,直到布尔表达式条件为false时才中止循环,好比do-while
(2) While的语法结构是什么样的?
while(布尔表达式){
语句块
}
while循环流程图
**
**
(1) 请书写出dowhile的语法结构 dowhile和while的区别是什么?
dowhile结构:
do{
语句块
}while(布尔表达式); //最后分号不可省略
while结构:
while(布尔表达式){
语句块
}
区别:
dowhile是先执行一次语句块再作判断,while是先判断再执行
(2) for循环的语法结构是什么?用while能作的循环能用for循环改写么?
for(表达式1;表达式2;表达式3){
语句块
}
for循环的表达式能够为一个或者两个,或者三个,可是分号不能省略。
例如:
int sum = 0; for (int i = 1; i<10 ; i++) { //三个表达式都有 sum += i; } for(int i = 1;i<10;) { //只有两个表达式 sum+=i; i++; } int i = 1; for(;;) { //三个表达式都没有 if(i<10) { sum+=i; i++; }else { break; } }
能用while作到的循环,for循环也能作到
**
**
(1) 什么是嵌套循环?语法结构是什么样的?
答:在一个循环语句内部再嵌套一个或多个循环,称为嵌套循环
for(表达式1;表达式2;表达式3){
for(表达式1;表达式2;表达式3){
语句块
}
语句块
}
例如:
for (int i = 0; i < 10; i++) { //外层循环 for (int j = 0; j < 10; j++) { //内层循环 System.out.println(j); //语句块 } }
**
**
(1) Break和continue的做用是什么?区别是什么?什么使用用break?何时用continue?
做用:
Break是用于强行退出循环,不执行剩下的语句
Continue是用于退出本次循环,不执行剩下的语句
区别:
Break是退出整个循环,不执行该循环体内后面的语句以及下一次循环
Continue:是退出当前循环,不执行本次循环后面的语句,继续执行下一次循环
使用:
Break是当须要终止循环时使用
Continue是当须要执行下一次循环时使用
例如:
//break的做用 for(int i = 0;i<10;i++) { if(i==5) { //当i==5时,退出循环,5之后的循环不执行 break; } System.out.println(i); }
执行结果:
//continue的做用 for(int i = 0;i<10;i++) { if(i==5) { //当i==5时,不执行i==5的那次循环,执行下一次循环 continue; } System.out.println(i); }
执行结果:
**
**
(1) Java为何取消goto语句?
goto关键字很早就在程序设计语言中出现,尽管goto还是java的一个保留字,但并为java语言中获得正式使用,java没有使用goto语句。若是使用大量的goto,会使程序逻辑变得混乱。
例如: //带标签的continue用法 outer:for(int i = 1;i<5;i++) { for(int j = 1;j<5;j++) { if(i*j == 12) { continue outer; } System.out.println(i*j); } }
执行结果:
带标签的continue用法的执行结果
1**
**
(1) 什么是语句块?语句块中定义的变量的做用域是什么?
语句块(复合语句),是用花括号括起来的任意数量的简单java语句。块肯定了局部变量的做用域,块中的程序代码,做为一个总体,是要被一块儿执行的。块能够被嵌套再另外一个块中,可是不能在两个嵌套的块内声明一样的变量,语句块可使用外部的变量,而外部的不能使用语句块中定义的变量,由于语句块中定义的变量做用域只限于语句块。
(2) 什么是方法?为何须要方法?
方法就是一段用来完成特定功能的代码片断,相似于其余语言的函数。方法用于定义该类或该类的实例的行为特征和功能实现,方法是类和对象行为特征的抽象,方法很相似于面向过程当中的函数,面向过程当中,函数是最基本单位,整个程序由一个个函数调用组成,面向对象中,整个程序的基本单位是类,方法是从属于类和对象。
(3) 方法是是带名字的语句块这句话对么?
对
(4) 什么是参数?什么是形参,什么是实参?
参数包括了形参是实参。形参是在方法声明时,用于接收外界传入的数据。实参是掉用方法时实际传给方法的数据。
public int Add(int a,int b) //a,b是形参 a(3,5);//3和5是实参
(5) 什么是返回值?一个方法能够没有返回值么?返回值必定得有类型么?为何?
方法在执行完毕后返回给掉用他的环境的数据。能够没有返回值,可是不须要返回值的时候,必须使用void修饰方法。返回值必定要有类型,返回值类型是事先约定好的数据类型。
(6) 一个方法的书写格式是什么?请写出来。
[修饰符1 修饰符2] 返回值类型 方法名(形参列表){
语句块
}
方法的重载实际是彻底不一样的方法,只是名称相同而已。
(2) 什么状况下会构成方法的重载?
1.形参列表的参数个数不一样、参数类型不一样、参数顺序不一样构成重载,只有返回值不一样,不构成重载
//如下三个方法构成重载
public int Add(int a,int b) { return a+b; } public double Add(double a,double b) {/* 形参的数据类型和前一个的数据类型不一样,构成重载*/ return a+b; } public double Add(double a,double b,double c) {/*行参的个数和前一个不一样,构成重载*/ return a+b+c; }
[修饰符1 修饰符2] 返回值类型 方法名(形参列表){
if(结束条件){
方法名(形参列表);
return 返回值;
}else{
retuern 返回值;
}
}
(2) 递归的基本思想是什么?
答:基本思想是“本身掉用本身”
(3) 递归头的做用是什么?递归体的做用是什么?
递归头:何时不调用自身方法,也就是递归头结束的条件。若是没有头,将陷入死循环
递归体:何时须要掉用自身方法。