/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成的方法存根
for (int i = 1i <= 20i++) {
int j = (int) (Math.random() * 2)
if (j == 0) {
System.out.println("数凯第"+i+"次抛硬币:硬币正面拦型朝上")
} else {
System.out.println("第"简毕猜+i+"次抛硬币:硬币反面朝上")
}
}
}
}
JAVA练习之——抛硬币import java.util.*
import java.io.*
interface game{
String get(int a)
}
interface gamefactory{
game getgame()
}
class yingbi implements game{
public String get(int a){
if(a==0) return "正面"
else return "反面仔宽"
}
}
class yingbifactory implements gamefactory{
public game getgame(){
return new yingbi()
}
}
class shazi implements game{
public String get(int a){
return String.valueOf(a+1)
}}
class shaizifactory implements gamefactory{
public game getgame(){return new shazi(){
public void a(){System.out.println("耐戚空new shazi()")
}
}}
}
public class Game {
public static void games(gamefactory factory,int a){
game s1=factory.getgame()
System.out.println(s1.get(a))
}
public static void print(ArrayList<String>e){
for(String y:e)
System.out.print(y)
}
/**
* @param args
*/
public static void main(String[] args) throws IOException{
DataInputStream in=new DataInputStream(System.in)
while(true){
System.out.println("请选择1:开始")
System.out.println("1:抛硬币")
int opinion=Integer.parseInt(in.readLine())
switch(opinion){
case 1:
System.out.println("开始?Y/N")
String a=in.readLine()
ArrayList<String>yin=new ArrayList<String>()
while(a.equals("Y")||a.equals("y")){
Random rand=new Random()
yingbifactory q=new yingbifactory()
int w=rand.nextInt(2)
yin.add(q.getgame().get(w))
games(q,w)
a=in.readLine()
}
print(yin)
System.out.println()
break
default:
System.exit(0)
}
// TODO 自动生成方法存昌瞎根
}
}
}
package testpublic class Coin{
private final int HEADS=0//正面
private final int TAILS=1//反面
private int face//存储flip方法得到的随机值
public Coin()//调用硬币这个方法
{
flip()
}
public void flip()//硬币发放中的抛硬币方法
{
face=(int) (Math.random()*2)// Math.random()会得到0到1之间的数,乘2得到0到2之间的小数,因为强制转换int类型所以,小于1的小数转换成了0,同理大于等于1小于2的转换成了1.代表了正反面
}
public boolean isHeads()//判断是否碧迅竖正面,未调用过,可能在其他类会用到判断方法。
{
return (face==HEADS)//返回布尔类型悔大值
}
public String toString()//将正反面的0,1转换成字符串的方法
{
String faceName
if(face==HEADS)//之前得到了昌肆face整数0或1,当face等于HEADS即等于0时,将faceName赋值为Heads
faceName="Heads"
else
faceName="Tails"//同上
return faceName
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)