在开发过程中,总会在一些算法思维上卡壳,现在决定记录下来,希望熟能生巧,以后经过努力,克服这个不足。
- 1.多对象切换,count>=3,用数组遍历的方式:
(下面是个自己思维卡壳第2次的例子,所以决定记录下来:)
方案
这个是比较灵活的解决方法:取自以前做unity捕鱼达人的炮弹切换例子:
if (i < paodans.Length-1)
{
i++;
}else{
i=0;
}
应用
《java编程思想》-多态一个练习:
class Ans{
void say(){
System.out.println("Ans say");
};
}
class Bnns extends Ans{
@Override
void say() {
System.out.println("Bnns say");
}
}
class Cnns extends Ans{
@Override
void say() {
System.out.println("Cnns say");
}
}
class Dnns extends Ans{
@Override
void say() {
System.out.println("Dnns say");
}
}
public class Tran {
private Ans ans=new Bnns();
private Ans[] anss={new Bnns(),new Cnns(),new Dnns()};
private int count=0;
/**
* 下面为应用处
*/
public void change(){
if(count==anss.length-1){
count=0;
}else{
count++;
}
for (int i = 0; i < anss.length; i++) {
if(count==i){
ans=anss[i];
break;
}
}
}
public void play(){
ans.say();
}
public static void main(String[] args) {
Tran tran=new Tran();
tran.play();
tran.change();
tran.play();
tran.change();
tran.play();
tran.change();
tran.play();
tran.change();
tran.play();
tran.change();
tran.play();
}
}