尚学堂百战程序员---第三章面试题

1.3种控制语句是什么?
顺序结构,选择结构,循环结构
2.如果if语句后面不写{},if的控制范围是否只限于第一句?
正确
3.Math.random()是什么意思?如果想获得15-20之间的随机数,怎么办?
产生一个0-1之间的随机数,包含0但不包含1
(int)(Math.random()*6)+15;
4.switch语句的功能是否完全可以使用if else if else多选择结构来代替?如果是,为什么还需要switch结构?
可以
switch一般用来做多值的判断,如果判断条件为区间,则最好使用多重if来做,如果是等值情况最好使用switch来做
5.switch中的表达式的结果需要是什么类型?
byte,char,short,int
jdk1.5 加入了枚举
jdk1.7加入了String
6.switch语句中,一个case开始执行后,什么时候结束执行这个case的语句?
遇到break结束执行这个case语句
7.switch语句中,default是否必须写?
不是必须写,当所有的条件不符合时,走default,break停止当前的循环
8.循环结构模拟了现实世界中的什么逻辑?
循环结构模拟了现实世界中的“重复问题“的逻辑
9.while和dowhile有什么区别?
当条件不成立时,do-while至少执行一次
10.什么情况下,会出现死循环?并写出一个例子来
循环条件始终成立时,则会出现死循环
while(true){
System.out.println(“helloworld”);
}
11.什么情况下,会出现死循环,并写出一个例子
当条件永久成立的时候
12.break和continue的作用?
break 循环终止
counttnue 终止此次循环,但还是要循环
13.java中.参数的传递使用值传递还是引用传递?
引用传递
14.、方法定义,形式参数和实际参数有什么区别?用自己的话描述
(形参是类型抽象;;实参是形参具体赋值)
15.、方法定义中,用实参还是形参?
(形参)
16.定义形参必须要写变量类型吗?
(必须的;类型决定内存,Java完的就是内存)
17.实参类型是否必须和形参类型匹配?
(因该啊,有不匹配的吗)
18.什么是方法重载?有什么作用?
(同名方法但是参数只不同;;是的输入值可选择,灵活;例如收银:可以给现金,有额可以刷卡)
19.两同3不同指的是?返回值不同构成重载吗?形参名不同够重载吗?
2同:父子类名同;返回值类型同;3不同:参数列表、方法体、)
20.递归算法中,递归头和递归尾指的是?
(递归方法,递归收拢条件)
21.递归算法的优点是?缺点是?
(逻辑简单;;耗费内存;效率不高;慢慢)

你可能感兴趣的:(尚学堂面试题)