微信

使用微信服务,更方便

职友集>Java面试题 > JavaSE笔试题一套带答案(4)

JavaSE笔试题一套带答案(4)

2015-08-31 06:30:01 阅读( 29 )

2361人 收藏本页

标签:Java面试题

二.填空(40分)
1.集合分为___Collection___________和___Map________两个最顶端的接口。
2.获得集合中元素总数的方法是_size()_______。
3.线程在生命周期中要经历5种状态,分别是
新建状态、_可运行状态(或就绪状态)_、_正在运行状态__、阻塞状态和___死亡状态__。
4.如果有一个类MyFrame是Frame的子类,能够被不同包中的类所使用,请写出该类的声明头:___public  MyFrame  extends  Frame_________
5.下面的类RandomEx从Random扩展,并为其添加一个public int nextInt(int min,int max)方法,以便产生min—max之间的随机数(包含下限min,但不包含上限max),试填空实现这个功能。
class RandomEx extends Random{
public int nextInt(int min,int max){
int result=nextInt( max-min   )+( min      );
return (result    );
}
}
6.设表student的结构如下:
name varchar2(30),
age int,
salary number(6,2)
连接对象为conn,
String sqlUpdate=”UPDATE studet SET salary = ?, age=?  WHERE  name = ?”;
现要修改name=”东方人华”这个人的age=25,salary=3546.8,
写出用PreparedStatement 执行sqlUpdate语句的相关代码(按执行顺序)
PreparedStatement ps=null;
_ps= conn.prepareStatement(sqlUpdate) _______________;
__ps.setDouble(1,3546.8) ________________________;
__ps.setInt(2,25)___________________________;
___ps.setString(3,”东方人华”)_________________;
int affectRow=ps.executeUpdate();//执行,并返回影响的行数
7.假设数组 PPM中存放过去100天某地大气污染指数,下列方法计算过去100天该污染指数
每天在10以上(含10),并且连续出现3天以上(含3天)的次数
//例如: int[] PPM={5,2,10,15,16,15,3,5,6,17,18,17,20,31,20}; 应当返回2
请将程序补充完整。
static public int PpmCount(int[] PPM)
{
final int PpmValue=10;  //污染指数临界值
final int ConDays=3; //连续出现的天数界限值
int TempConDays=0;
int GreatDays=0; //累计满足条件的天数
int Length=PPM.length;
for(int i=0;i<Length;i++)
{
if(   PPM[i]>=PpmValue     )
TempConDays+=1; // 次数+1
else
{
if(   TempConDays>=ConDays            )
GreatDays++;
(    TempConDays=0               );
}
}
if(TempConDays>=ConDays)
GreatDays++;
return (  GreatDays       );
}
8.下列方法convertToBinary()使用链式列表将十进制数n转换为二进制数,
试填空完成之。
public class TestConvert {
public String convertToBinary(int n){
LinkedList stack=new LinkedList();
int m=n;
while(m!=0){
int remainder=( m % 2     )
char c=(char)(’0′+remainder);
stack.addFirst(Character.valueOf(c));
m=(  m/2       );
}
Iterator it=stack.iterator();
StringBuffer sb=new StringBuffer();
while(it.hasNext()){
char c=(Character)it.next();
sb.append( c   );
}
return sb.toString();
}
}
二.填空(40分)

1.集合分为___Collection___________和___Map________两个最顶端的接口。

2.获得集合中元素总数的方法是_size()_______。

3.线程在生命周期中要经历5种状态,分别是

新建状态、_可运行状态(或就绪状态)_、_正在运行状态__、阻塞状态和___死亡状态__。

4.如果有一个类MyFrame是Frame的子类,能够被不同包中的类所使用,请写出该类的声明头:___public  MyFrame  extends  Frame_________

5.下面的类RandomEx从Random扩展,并为其添加一个public int nextInt(int min,int max)方法,以便产生min—max之间的随机数(包含下限min,但不包含上限max),试填空实现这个功能。

class RandomEx extends Random{

public int nextInt(int min,int max){

int result=nextInt( max-min   )+( min      );

return (result    );

}

}

6.设表student的结构如下:

name varchar2(30),

age int,

salary number(6,2)

连接对象为conn,

String sqlUpdate=”UPDATE studet SET salary = ?, age=?  WHERE  name = ?”;

现要修改name=”东方人华”这个人的age=25,salary=3546.8,

写出用PreparedStatement 执行sqlUpdate语句的相关代码(按执行顺序)

PreparedStatement ps=null;

_ps= conn.prepareStatement(sqlUpdate) _______________;

__ps.setDouble(1,3546.8) ________________________;

__ps.setInt(2,25)___________________________;

___ps.setString(3,”东方人华”)_________________;

int affectRow=ps.executeUpdate();//执行,并返回影响的行数

7.假设数组 PPM中存放过去100天某地大气污染指数,下列方法计算过去100天该污染指数

每天在10以上(含10),并且连续出现3天以上(含3天)的次数

//例如: int[] PPM={5,2,10,15,16,15,3,5,6,17,18,17,20,31,20}; 应当返回2

请将程序补充完整。

static public int PpmCount(int[] PPM)

{

final int PpmValue=10;  //污染指数临界值

final int ConDays=3; //连续出现的天数界限值

int TempConDays=0;

int GreatDays=0; //累计满足条件的天数

int Length=PPM.length;

for(int i=0;i<Length;i++)

{

if(   PPM[i]>=PpmValue     )

TempConDays+=1; // 次数+1

else

{

if(   TempConDays>=ConDays            )

GreatDays++;

(    TempConDays=0               );

}

}

if(TempConDays>=ConDays)

GreatDays++;

return (  GreatDays       );

}

8.下列方法convertToBinary()使用链式列表将十进制数n转换为二进制数,

试填空完成之。

public class TestConvert {

public String convertToBinary(int n){

LinkedList stack=new LinkedList();

int m=n;

while(m!=0){

int remainder=( m % 2     )

char c=(char)(’0′+remainder);

stack.addFirst(Character.valueOf(c));

m=(  m/2       );

}

Iterator it=stack.iterator();

StringBuffer sb=new StringBuffer();

while(it.hasNext()){

char c=(Character)it.next();

sb.append( c   );

}

return sb.toString();

}

}


来自IT公司面试手册

下一篇:JavaSE笔试题一套带答案(5)

上一篇:JavaSE笔试题一套带答案(3)

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题