一、三种控制结构是什么?以及规则?
答
顺序结构,选择结构,循环结构
规则:
1、顺序:
程序执行的默认方式,自上而下依次执行语句
2、选择:
有些语句执行,有些语句不执行
一种:单条件判断
if(条件表达式){
语句;}
二种:互斥条件判断
if(条件表达式){
语句;
}else{
语句;
}
三种:多条件判断
if(条件表达式){
语句;
}else if (条件表达式){
语句;
}else{
语句;
}
四种:多层条件判断
if(第一层条件){
if(第二层条件){
真正运行逻辑
}}
五种:switch语句
int x = 4;
switch(x){
case 1:
System.out.println("这里是1的执行代码");
break;
case 3:
System.out.println("这里是3的执行代码");
break;
case 4:
System.out.println("这里是4的执行代码");
break;
case 2:
System.out.println("这里是2的执行代码");
break;
default:
System.out.println("这里是其他数字的执行代码");
break;
}
3、循环:
有些语句重复执行
一种for循环
for(初始化表达式1;布尔表达式2;步进表达式3){
循环体3
}
二种while循环
初始化表达式1
while(布尔表达式2){
循环体3
步进表达式3
}
三种do while循环
初始化表达式1
do{
循环体3
步进表达式3
}while(布尔表达式2);
二、如果 if 语句后面不写{},if 的控制范围是否只限于第一句?
答
正确
public static void main(String[] args) {
if(true)
System.out.println(“我执行了”);
}
三、 Math.random()是什么意思?如果想获得1-7之间的随机数,怎么办?
答
(int)(Math.random()*6)+1, 生成一个1~7之间的随机数。
解释:
Math.random()
生成一个0~1之间的随机小数。
Math.random()*6
生成一个0~6之间的随机小数。
(int)(Math.random()*6)
把生成的06之间的随机小数,强制取整,最终是06之间的随机整数
四、 switch 语句的功能是否完全可以使用 if else if else 多选择结构来代替?如果是,为什么还需要 switch 结构?
答
可以
switch 一般用来做多值的判断,如果判断条件为区间,则最好使用多重 if 来做,如果是等值情况最好使用 switch 来做
五、switch 中的表达式的结果需要是什么类型?
答
byte,char,short,int
jdk1.5 加入了枚举
jdk1.7 加入了 String
六、 switch 语句中,一个 case 开始执行后,什么时候结束执行这个 case 的语句?
答
遇到 break 结束执行这个 case 语句
七、 switch 语句中,default 是否必须写?
答
不是必须写
八、下面代码有什么错误?
switch (qqq) {
case ‘A’;
case ‘S’;
System.out.println(“输出A”);
break;
default:
System.out.println(“输出S”);
}
答
case 后的表达式后面应该是":"冒号
九、循环结构模拟了现实世界中的什么逻辑?
答
循环结构模拟了现实世界中的“重复问题“的逻辑
十、循环结构的四种内部结构是什么?
一种for循环
for(初始化表达式1;布尔表达式2;步进表达式3){
循环体3
}
二种while循环
初始化表达式1
while(布尔表达式2){
循环体3
步进表达式3
}
三种do while循环
初始化表达式1
do{
循环体3
步进表达式3
}while(布尔表达式2);
四种foreach循环
foreach(数组或集合中元素的类型 迭代变量:数组或集合名){
循环体;
}
十一、while 和 dowhile 有什么区别?
答
无论条件成不成立,do-while 至少执行一次
十二、 什么情况下,会出现死循环?
答
循环条件始终成立时,则会出现死循环
while(true){
System.out.println(“哎,死循环了”);
}
十三、for 循环相比 while 循环有什么优势?
答
语法结构比 while 简便,
通常用于解决循环次数固定的问题
十四、下面代码都有什么问题?
do{
System.out.println(b);
b++;
} while (b<0)
答
b没有初始化
十五、下面代码有错误吗?如果有,指出错误?
for(int i=0;i<=10;i++){
System.out.println(i); //循环体
}
System.out.println("(((((("+i);
答
System.out.println("(((((("+i);
i 超出了作用域的范围
十六、循环中,break 的作用是?continue 的作用是?
答
break
用于强行退出循环,不执行循环中剩余的语句
continue
用于跳过本次循环, 不执行 continue 后的语句, 继续下一次循环
十七、语句块能否使用外部的变量?语句块中定义的变量,外部能否使用?
答
语句块能使用外部的变量, 但是语句块中定义的变量外部不能使用
十八、 方法的定义中,是否必须要有返回值类型?如果确实不需返回值,使用哪个关键字声明?
答
返回值类型不是必须的
不需要返回值使用关键字 void
//无返回值
public void getTest(){
}
//有返回值
public String getTest(){
return “”;
}
十九、 方法的定义中,return 是否必须?它有什么作用?
答
不是必须
return 语句终止方法的运行并指定要返回的数据
//指定要返回的数据
public String getTest(){
return “我返回的字符串”;
}
二十、Java 中,参数的传递使用值传递还是引用传递?
答
值传递
二十一、 方法定义中,形式参数和实际参数有什么区别?用自己的话描述。
答
方法定义时的参数称为形式参数,需要数据类型
方法调用时的参数称为实际参数,不需要类型,只需要值
二十二、 方法定义时,使用实参还是形参?
答
方法定义时,使用的是形参
二十三、定义形参时,必须要写变量类型吗?
答
必须要写变量类型
二十四、 实参类型是否必须和形参类型匹配?
答
必须匹配
二十五、 什么是方法的重载,有什么作用?
答
方法重载:
1)在同一个类中
2)方法的名称相同
3)参数列表不同(类型,个数,顺序)
4)与访问修饰符和返回值类型可以相同也可以不同
5)访问修饰符可以相同可以不同
6)与异常无关
作用:
传递不同的参数实现相同的效果
二十六、 递归算法中,递归头和递归体分别指什么?
答
递归头:
什么时候不调用自己方法,即递归的结束条件
递归体:
什么时候需要调用自己方法,即自己调用自己
二十七、递归算法的优点是什么?缺点是什么?
答
递归的优点:
将问题逐渐简单化
递归的缺点:
会占用大量的系统堆栈,内存耗用多,在递归调用层次多时速度比循环慢的多。
二十八、编程题 根据随机生成的的月份,打出该月份的天数.(不考虑闰年、闰月)
答
public static void main

本文详细探讨了Java中的控制类,包括顺序、选择和循环结构。解释了if语句的范围、Math.random()的使用、switch语句的条件及应用,并通过例子展示了各种循环结构的用法。同时,讨论了死循环、break和continue的作用,以及方法定义中的返回值和参数传递原则。
最低0.47元/天 解锁文章
758

被折叠的 条评论
为什么被折叠?



