当柳上原的风吹向天际的时候...

真正的快乐来源于创造

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  368 Posts :: 1 Stories :: 201 Comments :: 0 Trackbacks
package com.heyang;

/**
 * 双色球摇奖
 * 
@author: 何杨(heyang78@gmail.com)
 * @date: 2009-2-20-下午10:52:55
 
*/

public class DoubleColorBall{
    
public static void main(String[] args){
        
int[] ballNumbers=getSevenNumbers();
        
        
for(int i:ballNumbers){
            System.out.print(i
+",");
        }

    }

    
    
/**
     * 得到七个随机数数组
     * 
@return
     
*/

    
public static int[] getSevenNumbers(){
        
final int arrLength=7;
        
int[] arr=new int[arrLength];
        
        
// 前六个从1-33中选取,如有重复再取一次
        do{
            
for(int i=0;i<=arrLength-2;i++){
                arr[i]
=getIntgerBetween(33,1);
            }

        }
while(hasDuplicatedItem(arr));
        
        
// 最后一个从1-15中选取
        arr[6]=getIntgerBetween(15,1);
        
        
return arr;
    }

    
    
/**
     * 位图法判断整形数组是否存在重复
     * 
@param arr
     * 
@return
     
*/

    
public static boolean hasDuplicatedItem(int[] arr){
        
// 找出数组中最大值
        int max=arr[0];
        
int min=max;
        
for(int i:arr){
            
if(max<i){
                max
=i;
            }

            
if(min>i){
                min
=i;
            }

        }

        
        
int[] newArr=new int[max-min+1];
        
for(int i:arr){
            
int index=i-min;
            
            
if(newArr[index]==0){
                
// 以前未在此位置存值
                newArr[index]=1;
            }

            
else{
                
// 以前已经在此位置存值
                return true;
            }

        }
    
        
        
return false;
    }


    
    
/**
     * 取得max与min之间的一个随机整数,包括min和max两值
     * 
@param max
     * 
@param min
     * 
@return
     
*/

    
public static int getIntgerBetween(int max,int min){
        
int interval=max-min;        
        
        
return (int)Math.round((Math.random()*interval))+min;
    }

}
posted on 2009-02-21 07:23 何杨 阅读(290) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: