玩转骰子
如果只是完成最基本的功能的骰子,把它最基本的的属性写出来应该来说是并不算难,即使现在的水平花点时间也可以将它写出来。但如果要加上附加的功能的话就对于我来说就有点挑战了。
首先是最基本的骰子构造函数:
import java.util.*;
public class Dice
{
private int faceValue;
public Dice(){
}
public void Roll(){
Random random=new Random();
faceValue=random.nextInt()%2+1;
}
public int getFaceValue(){
return faceValue;
}
}
然后是最核心的容器的代码,多个骰子的投掷,并隔离不想出现的数字:
import java.util.*;
public class Container
{
private Dice a[];
private int b;
private int sum=0;
public Container(int i){
this.b=i;
a=new Dice [i];
}
public void Dice(){
int j;
for(j=0;j<b;j++)
{
a[j]=new Dice();
a[j].Roll();
if(a[j].getFaceValue()==4){
System.out.println("第"+j+"个骰子:1") ;
sum += 1;
continue;
}
System.out.println("第"+j+"个骰子:"+a[j].getFaceValue());
sum += a[j].getFaceValue();
}
System.out.println("总的点数:"+sum);
}
}
最后是他的主函数验证他的正确性:
public class text1 {
public static void main(String[] args)
{
Container ct= new Container(5);
ct.Dice();
}
}
我预计的时间是两个小时,但最终用时三个小时多。最大的估计失误是对编程一些实现的困难,在上面花了许多时间,最后还得到了同学的一点的帮助。最后也认识到基本功扎实的重要性和经验的重要