2009 年4 月15 日扬迅科技java 笔试题
第一题:指出如下代码的:a.错误(必需);b.您认为不妥之处(非必需)
public class Sprite{
private static final byte SCREEN_WIDTH = 187;
private static final byte SCREEN_HEIGHT = 234;
private static byte ROLE_PLAYER = 0;
private static byte ROLE_ENEMY = 1;
private int x;
private int y;
private int index;
/**
判断角色坐标是否在一个矩形内的方法
*/
public static boolean check(int rec_x, int rec_y, int rec_w, int rec_h) {
if(rec_w<=0||rec_h<=0) {
return false;
}
//此处忘记一个判断……
if(x>SCREEN_WIDTH||y>SCREEN_HEIGHT) {
return false;
}
if(x>=rec_x&&x<=rec_x+rec_w&&y>=rec_y&&y<=rec_y+rec_h) {
return true;
}
}
public Sprite(int type) {
SCREEN_WIDTH = 270;
SCREEN_HEIGHT = 340;
switch(type){
case 0:
x = 10;
break;
case 1:
x = -10;
break;
}
}
}
第二题:使用一切方法加快如下程序的运行速度。
//已定义:int width; int height; String[] names; Sprite s;
for(int i = 0; i < width*height; i++) {
if(s.getIndex()*i>0) {
s.setX(width*i/2);
s.setY(height*8);
} else if(s.getIndex()*i<=0) {
String temp = new String("扬讯科技");
s.setName(names[i]+temp);
}
}
第三题:
某手机游戏,地图为格状,20*20。每一格的内容可能是如下的游戏元素之一:
a)-h):各种不同的地形。树林啊小河啊石头啊之类的。
i):100张卡片之一,又分为翻开和未翻开两种状态。
j):24种随机事件之一,每一种又有主动和被动两种。
现要求仅使用400字节内存来存储这一地图。请说出拟使用的数据结构,解释清楚即可。
第四题:(其实原卷又重新编号了……拼凑的……下面的题目不用提供完整代码)
三枚硬币:1角的、5角的、1元的,背面都是国徽,正面各不相同。请编写一段程序,列
举扔出三枚硬币后所有可能的组合状态。
第五题:实现一个方法int calculateDays(int y0, int m0, int d0, int y1, int m1, int
d1)。该方法计算从y0年m0月d0日到y1年m1月d1日所经过的天数。考虑闰年。
第六题:取得5个随机数
JAVA笔试题
最新推荐文章于 2024-12-27 16:23:26 发布