实验五实验报告
实验五
实验项目
分析系统架构
编译、运行、测试系统
首先我在我的电脑里建立了有名称要求的文件夹,然后打开Android Studio clone了我们的小组项目。
此处因为已经clone过了,所以无法再把这个项目clone进去
进行编译,运行,测试均正常
修改系统
我在游戏主界面加载了一个toast,点击可以短暂地显示我的学号信息
首先在封面文件里我修改了游戏封面的布局文件,加载了一个按钮,它的各方面属性和已有的两个差不多,只改变了它的id和按钮文本
然后在相应的活动类里面,注册好这个按钮之后,我在点击处理的结构里加载了这个按钮点击后显示toast的属性。toast文本就是我的学号姓名,设置的是短暂显示。
分析数据结构、排序、查找算法的应用
我们的车辆选择和音乐选择里面涉及了查找算法,这次上述三项主要也是运用了线性查找的算法,在searching类里
//线性查找方法
public static int linearSearch(String[] data, String target){
boolean judge = false;
int index =0;
while (index < data.length){
if(data[index].equals(target)){
judge = true;
break;
}
index++;
}
if (!judge){
index = -1;
}
return index;
}
并且在MusicChoosing活动类里运用:
public void onClick(View view) {
if (view.getId()== R.id.music_searchBtn){
String target = findSong.getText().toString();
int resultIndex = Searching.linearSearch(songName,target);
if (resultIndex!=-1){
StartGame.putExtra("songID",songID[resultIndex]);
StartGame.putExtra("carID",idReceiver.getStringExtra("carID"));
startActivity(StartGame);
finish();
}else {
Toast.makeText(this,"曲目不存在",Toast.LENGTH_SHORT).show();
}
}
}
本来都是可以通过触碰来选择的,不过我们加载了文本框,可以让用户通过输入文字索引来查找。
在游戏里运用最多的是数组,比如刚才查找算法的songID,carID都是储存在数组里进行查找的。子弹bullet类的实现方式也是将子弹位图文件所在的数组clone出来,每出现一个就从clone数组里面拿出来一个呈现在画面上,同时再clone一个新的子弹数组,再取出...这样循环往复,不会出现子弹用尽的问题。