黑马程序员——随机菜谱

                                                                     

                                          ----------------------    android培训      java培训   期待与您交流!    ----------------------   
                                              

import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
import java.util.Set;

public class  CaiPu{
 /**
  * 题目:写一个随机菜谱
菜谱内容:川菜,粤菜,湘菜(内容这三项只是建议,自己可以增加,自己发挥)
评分细节:
1:实现功能:2分 2:代码规范:1分 3:异常处理:1分 4:用户体验度:5分 5:内容:3分
提醒:切记用户体验度哦,想拿高分,必须注意用户体验度,这里我只提醒大家一点,一个菜有名字,但不知道其中的内容,顾客是不会喜欢的,要想吸引顾客必须有内容来吸引。
  */
    public static void main(String[] args){
     try{
      //定义字符串数组,该数组中装了菜谱中所有的菜
      String cai[]={"北京菜","上海菜","广州菜","沈阳菜","河北菜","河南菜","四川菜","山东菜"};//长度为8
      String cai_describe[]={"北京菜美味可口","上海菜清淡","广州菜神韵","沈阳菜火爆",
            "河北菜万古长青","河南菜源远流长","四川菜香辣","山东菜朴实"};//定义菜对应的描述
      System.out.println("所有菜的数量:"+cai.length);
      String order[]=new String[3];//定义每个菜谱中有三个菜
      String order_describe[]=new String[3];//定义每个菜谱中有三个菜对应的菜的描述
      int random_cai[]=getThree(cai.length);
      for (int i = 0; i < 3; i++) {//循环获取随机数三次,组成一个菜谱
    order[i]=cai[random_cai[i]];//随即获取菜谱中的菜并赋值给要生成的菜谱
    order_describe[i]=cai_describe[random_cai[i]];//随即获取菜谱中的菜并赋值给要生成的菜谱的对应菜的描述
   }
      for (int i = 0; i < order.length; i++) {
    System.out.println("随机生成的菜谱中的菜其第"+(1+i)+"到菜为:"+order[i]+",此"+order_describe[i]);
   }
     }catch(Exception e){
      e.printStackTrace();
     }
    }
    /*
     * 此方法是获取不重复的三个菜
     */
    public static int[] getThree(int length){
     try{
      Random r=new Random();
   Set set=new HashSet();
   for (int i = 0; i < 100; i++) {//此循环是为了防止取重复的值,如果是重复的值可再取
    if(set.add(r.nextInt(length))){//set的用法,如果不重复就add,重复的话再取
     if(set.size()==3){//此处的3为每个随机菜谱中有三个菜
      break;
     }
    }else{
     continue;
    }
   }
   Iterator iter=set.iterator();
   int num[]=new int[3];
   int num_add=0;//定义自增变量
   while(iter.hasNext()){
    num[num_add]=(Integer)iter.next();
    num_add++;
   }
   //该循环用于测试
 //  for (int i = 0; i < num.length; i++) {
 //   System.out.println("接收到的值为:"+num[i]);
 //  }
   return num;
     }catch(Exception e){
      e.printStackTrace();
     }
  return null;
  
    }
}

 

 

 

 

                                          ----------------------    android培训      java培训   期待与您交流!    ----------------------   
                         详细请查看      http://edu.csdn.net/heima

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

King·Forward

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值