精华内容
下载资源
问答
  • Java 生成随机密码

    千次阅读 2018-12-13 19:40:33
    利用Random方法生产随机密码。 将字母,数字,符号拆开... 然后循环取值,每一次从数组中随机拿取字符,并把这个字符随机放入生产的密码字符串中的某个位置。 public final static String[] LOWER_CASES = { "a", ...
    利用Random方法生产随机密码。
    将字母,数字,符号拆开成可取用的数组,按照密码长度做生成策略, 分别为小写字母占密码长度的1/2,大写字母和数字各占1/4,符号占剩余无法除尽的(最多两个符号)。
    然后循环取值,每一次从数组中随机拿取字符,并把这个字符随机放入生产的密码字符串中的某个位置。
    
    
    public final static String[] LOWER_CASES = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
    public final static String[] UPPER_CASES = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
    public final static String[] NUMS_LIST = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
    public final static String[] SYMBOLS_ARRAY = {"!","~","^","_","*"};
    
    /**
     * 生成随机密码
     * @param pwd_len 密码长度
     * @return 密码的字符串
     */
    public static String genRandomPwd(int pwd_len) {
        if ( pwd_len < 6 || pwd_len >20 ) {
            return "";
        }
        int lower = pwd_len / 2 ;
    
        int upper = (pwd_len - lower) /2;
    
        int num =  (pwd_len - lower) / 2;
    
        int symbol = pwd_len - lower - upper - num ;
        
        StringBuffer pwd = new StringBuffer();
        Random random = new Random();
        int position = 0;
        while((lower + upper + num + symbol) > 0 ){
            if(lower > 0){
                position = random.nextInt(pwd.length() + 1);
    
                pwd.insert(position,LOWER_CASES[random.nextInt(LOWER_CASES.length)]);
                lower--;
            }
            if(upper > 0){
                position = random.nextInt(pwd.length()  + 1);
    
                pwd.insert(position,UPPER_CASES[random.nextInt(UPPER_CASES.length)]);
                upper--;
            }
            if(num > 0){
                position = random.nextInt(pwd.length()  + 1);
    
                pwd.insert(position,NUMS_LIST[random.nextInt(NUMS_LIST.length)]);
                num--;
            }
            if(symbol > 0){
                position = random.nextInt(pwd.length()  + 1);
    
                pwd.insert(position,SYMBOLS_ARRAY[random.nextInt(SYMBOLS_ARRAY.length)]);
                symbol--;
            }
    
            System.out.println(pwd.toString());
        }
    
    
        return pwd.toString();
    }
    展开全文
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例1: 输入: [1,2,3,4,5] 输出: True ...

    题目描述

    从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。

    示例 1:

    输入: [1,2,3,4,5]
    输出: True

    示例 2:

    输入: [0,0,1,2,5]
    输出: True

    限制:

    数组长度为 5 

    数组的数取值为 [0, 13] .

    解题思路

    1、这道题考虑最大最小值其实不太方便,因为有了大小王的存在,最大最小的差不一定就小于5

    2、可以考虑排序后两两比较,如果是大小王,就记录大小王的个数,如果后面一个比前面一个大于1,那么说明需要大小王去填

    3、最后判断大小王的个数够不够填

    class Solution {
        public boolean isStraight(int[] nums) {
            Arrays.sort(nums);
            int joker = 0;
            int needJoker = 0;
            for(int i = 0;i < nums.length-1;i++){
                if(nums[i] == 0){
                    joker++;
                    continue;
                }else if(nums[i] == nums[i+1]){
                    return false;
                }else {
                    needJoker += nums[i+1] - nums[i] - 1;
                }
            }
            return joker >= needJoker;
        }
    }

     

    展开全文
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11, Q为12,K为13,而大、小王为0。可以看成任张数字。A不能视为14。 示例1: 输入: 1 2 3 4 5 输出: True 示例2: ...

    从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11, Q为12,K为13,而大、小王为0,可以看成任张数字。A不能视为14。


    示例1:
    输入: 1 2 3 4 5
    输出: True

    示例2:
    输入: 0 0 1 2 5
    输出: Ture

    限制:
    数组长度为5
    数组的数取值为[0, 13]

    import java.util.*;
    public class Main {
    	public static void main(String[] args) {
    		// TODO 自动生成的方法存根
    		Scanner sc= new Scanner(System.in);
    		int[] array=new int[5];
    		boolean bool=true;
    		int zeroCount=0;
    		//用户输入
    		for(int i=0;i<5;i++)
    		{
    			array[i]=sc.nextInt();
    			if(array[i]==0)
    			{
    				//判断0的个数
    				zeroCount++;
    			}
    		}
    		//数组降序排列
    		for(int i=0;i<5;i++)
    		{
    			for(int j=i+1;j<5;j++)
    			if(array[i]<array[j])
    			{
    				//数据交换
    				array[i]=array[i]+array[j];
    				array[j]=array[i]-array[j];
    				array[i]=array[i]-array[j];
    			}
    		}
    		//查找数组中是否存在重复
    		for(int i=1;i<5;i++)
    		{
    		    if(array[i]==array[i-1]&&array[i]!=0)
    		    {
    		        zeroCount=-1;
    		        bool=false;
    		    }
    		}
    		//有0的情况
    		if(zeroCount>0)
    		{
    			int count=0;
    			//查询数组非0值得间隔距离
    			for(int i=1;i < 5-zeroCount;i++)
    			{
    				count+=array[i-1]-array[i]-1;
    			}
    			//间隔值与0的个数进行比较
    			if(zeroCount<count)
    			{
    				bool=false;
    			}
    		}
    		//非0数的顺子
    		if(zeroCount==0)
    		{
    			for(int i = 1;i < 5;i++)
    			{
    				if(array[i-1]+1!=array[i])
    				{
    					bool=false;
    					break;
    				}
    			}
    		}
    		//输出
    		System.out.println(bool);
    	}
    
    }
    
    展开全文
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: ...
    从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。
    
     
    
    示例 1:
    
    输入: [1,2,3,4,5]
    输出: True
     
    
    示例 2:
    
    输入: [0,0,1,2,5]
    输出: True
     
    
    限制:
    
    数组长度为 5 
    
    数组的数取值为 [0, 13] .
    
    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/bu-ke-pai-zhong-de-shun-zi-lcof
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
    
    class Solution {
        public boolean isStraight(int[] nums) {
            Arrays.sort(nums);
            int zero = 0;
            int i = 0;
            while(i < 5 && nums[i] == 0){
                zero++;
                i++;
            }
            if(i == 5) return true;
            int min = nums[i];
            int n = i;
            for(; i < 4; i++){
                if(nums[i]==nums[i+1]) return false;
            }
            int max = nums[4];
            if(max-min <= 4 - n + zero) return true;
            return false;
        }
    }
    
    展开全文
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: True ...
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例1: 输入: [1,2,3,4,5] 输出: True...
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: True ...
  • java Math.random()的使用

    2020-05-09 13:18:01
    Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值,是Java语言常用代码。 Math.random()*b 左边闭区间取值0,右边开区间取值b ...现colors数组中随机取出一个颜色,可以这
  • java 算法

    2012-03-29 09:01:35
    用半角的特殊符号代替全角的特殊符号,数组和数组之间的转换代码,资源文件里读取值的类,一个随机类,计算传入值是否星期六,为RootPaneContainer组件添加键盘事件,将数组转成字符串 在调试或记录日志时用到,...
  • java实现100个不重复随机数

    千次阅读 2018-05-02 16:26:01
    是建立两个数组,一个是1-100,另一个其中随机取值。这里可以设置一个end变量记录取值长度。 3.利用List提供的Colections.shuffle(),但是要先转成List,这里需要注意asList只能取值,但是不能增加或删除.具体...
  • 假设数组中有10个整数,取值范围为0~10,要求用最快的速度把这10个整数从小到大进行排序。 可以根据这有限的范围,建立一个长度为11的数组。数组下标0到10,元素初始值全为0 假设数组数据为:9,1,2,7...
  • 61. 扑克牌的顺子

    2021-03-13 16:07:43
    扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为0,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: True ...
  • Java-双色球

    2017-12-16 16:12:19
    1.随机生成7位数的数组为大奖号码(前6位红球每个数值取值范围为1~33,而且6个数值不能相同,第七位篮球取值范围为1~16) 2.判断购买号码为手动输入还是机选(如为手动输入,将用for循环一次控制台输入一个依次数...
  • 扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: True ...
  • 浓缩题目:扑克牌中随机抽取5张牌,判断是不是一个顺子,即这5张牌是不是连续的。其中令大小王用0表示,大\小王可以看成任何数字。 思路 用数组记录五张扑克牌,将数组调整为有序的,若0出现的次数>=顺子的差值...
  • Java经典编程300例(code)

    千次下载 热门讨论 2013-01-09 10:26:53
    实例032 将二维数组中的行列互换 45 实例033 利用数组随机抽取幸运观众 47 实例034 用数组设置JTable表格的 列名与列宽 49 实例035 使用按钮控件数组实现 计算器界面 51 实例036 通过复选框控件数组实现 添加多个复...
  • Java测试题4答案

    2008-06-18 17:04:35
    roll()方法使faceValue为1~6的一个随机值。getFaceValue()是取出faceValue值。 2)然后定义DiceGame类。 提示:DiceGame类有die1、die2两个静态属性,有一个play()方法。play()方法返回一个布尔类型,...
  • 实例043 将二维数组中的行列互换 53 实例044 利用数组随机抽取幸运观众 54 实例045 用数组设置JTable表格的列名与列宽 55 3.2 数组操作 57 实例046 数组的下标界限 57 实例047 按钮控件数组实现计数器界面 58 实例...
  • 实例043 将二维数组中的行列互换 53 实例044 利用数组随机抽取幸运观众 54 实例045 用数组设置JTable表格的列名与列宽 55 3.2 数组操作 57 实例046 数组的下标界限 57 实例047 按钮控件数组实现计数器界面 58 实例...
  • 实例043 将二维数组中的行列互换 53 实例044 利用数组随机抽取幸运观众 54 实例045 用数组设置JTable表格的列名与列宽 55 3.2 数组操作 57 实例046 数组的下标界限 57 实例047 按钮控件数组实现计数器界面 58 实例...
  • 实例043 将二维数组中的行列互换 53 实例044 利用数组随机抽取幸运观众 54 实例045 用数组设置JTable表格的列名与列宽 55 3.2 数组操作 57 实例046 数组的下标界限 57 实例047 按钮控件数组实现计数器界面 58 实例...
  • 实例043 将二维数组中的行列互换 实例044 利用数组随机抽取幸运观众 实例045 用数组设置JTable表格的列名与列宽 3.2 数组操作 实例046 数组的下标界限 实例047 按钮控件数组实现计数器界面 实例048 复选框...
  • 实例043 将二维数组中的行列互换 实例044 利用数组随机抽取幸运观众 实例045 用数组设置JTable表格的列名与列宽 3.2 数组操作 实例046 数组的下标界限 实例047 按钮控件数组实现计数器界面 实例048 复选框...
  • 实例043 将二维数组中的行列互换 实例044 利用数组随机抽取幸运观众 实例045 用数组设置JTable表格的列名与列宽 3.2 数组操作 实例046 数组的下标界限 实例047 按钮控件数组实现计数器界面 实例048 复选框...
  • 实例043 将二维数组中的行列互换 实例044 利用数组随机抽取幸运观众 实例045 用数组设置JTable表格的列名与列宽 3.2 数组操作 实例046 数组的下标界限 实例047 按钮控件数组实现计数器界面 实例048 复选框...
  • 实例043 将二维数组中的行列互换 实例044 利用数组随机抽取幸运观众 实例045 用数组设置JTable表格的列名与列宽 3.2 数组操作 实例046 数组的下标界限 实例047 按钮控件数组实现计数器界面 实例048 复选框...
  • Java开发实战1200例.第2卷.part3

    热门讨论 2013-05-08 22:46:34
    实例105 中随机返回记录 183 实例106 使用GROUP BY子句实现数据的 分组统计 184 实例107 利用GROUP BY函数实现多表分组 统计 185 4.3 比较大小与逻辑应用 187 实例108 在查询结果中不显示重复记录 187 实例109 ...
  • Java开发实战1200例.第2卷.part2

    热门讨论 2013-05-08 22:45:35
    实例105 中随机返回记录 183 实例106 使用GROUP BY子句实现数据的 分组统计 184 实例107 利用GROUP BY函数实现多表分组 统计 185 4.3 比较大小与逻辑应用 187 实例108 在查询结果中不显示重复记录 187 实例109 ...
  • Java开发实战1200例.第2卷.part1

    热门讨论 2013-05-08 22:44:13
    实例105 中随机返回记录 183 实例106 使用GROUP BY子句实现数据的 分组统计 184 实例107 利用GROUP BY函数实现多表分组 统计 185 4.3 比较大小与逻辑应用 187 实例108 在查询结果中不显示重复记录 187 实例109 ...
  • 实例105 中随机返回记录 实例106 使用GROUP BY子句实现数据的分组统计 实例107 利用GROUP BY函数实现多表分组统计 4.3 比较大小与逻辑应用 实例108 在查询结果中不显示重复记录 实例109 使用NOT查询不满足条件的...

空空如也

空空如也

1 2 3
收藏数 41
精华内容 16
关键字:

java从数组中随机取值

java 订阅