随机数java随机数生成(Java random number generation)

java随机数  时间:2021-02-13  阅读:()

java随机数生成Java random number generationMethod of generating random numbers by Java

First, the random method is used to generate random numbers.Generating random numbers in Java language is relatively simple,because there is a ready-made method that can be used. In theMath class, the Java language provides a method called random.This method allows the system to generate random numbers.However, by default, the range of random numbers generated bythem is relatively small, which is double random numbersgreater than or less than 0 to 1. Although its random numberrange is relatively small, it can not meet the daily needs.Random numbers that may be generated in daily work. In fact,as long as the method is handled flexibly, the random numberin any range can be obtained.

If we can first generate a random number by the random method,and then multiply the result by 10. The randomnumbers generatedat this time are greater than or equal to 0 less than 10 of thenumber. And then use the Int method to convert (it will removethe decimal off the number, that is, only the integer part, notfour into five) . Finally, we can obtain an integer random numberfrom 0 to 9. The implementation method is very simple, that is,the original random method is changed according to thefollowing format: (int) (Math.Random () *10) . In fact, we canextend this method to produce random numbers in arbitraryranges. It is necessary to change this 10 to N, such as (int)(Math.Random ()) *n. At this point, the application generatesa random number that is larger than or equal to 0 small and n.If you set n to 5, then it generates an integer random number

between 0 and 5. If this is written as a parametric method, thenthe method can be used to generate the randomnumber in the rangeas long as the user input needs to generate the maximum numberof random numbers. Defining your own library of tools in JavaSometimes a programmer may need to generate a random number orodd number within a specified range. Is it possible to do itby this means? The answer is yes. If the program needs togenerate an even number within the range of 1-100. How do youdo this?First of all, you need to generate a random number from0 to 99 (as for why here is 99) , you' ll be patient and you' llknow why. To implement this requirement, it is very simple, aslong as the following statement can be implemented: i=1+ (int)(Math.Random () *100) . Where (i nt) (Math.Random () *99)generates integer random numbers from 0 to 99. Then plus 1 isa random integer that generates 1 to 100. Then the resultingrandom number is assigned to the variable I. But the randomnumbers generated at that time are even numbers and odd numbers.And now what programmers need is a random even number. Then wecan add a if judgment sentence at the back. Divide this randomnumber by 2, and if there is no remainder (or the remainder is

0) , it means that the random number is even and can be returneddirectly. If the remainder of the return is not zero, then itis an odd number. If we add 1, we change to even number and return.Note, in the above random number generation, the author usesthe range of 0 to 99, and then add 1 to let it change to 1 to100 random number. The final result is a random number between1 and 100. In fact, if the scope of the random odd number, tothe above statement needs to be slightly modified.

===============================

Suppose the user wants to generate an odd number or even numberin any range, can it be implemented? Suppose the user wants toimplement any even number between M and n (M

It can be seen that although the random method itself producesrandom numbers, there is a strict range limit. However, as longas it is reasonably transformed, programmers can still use thismethod to generate random data needed by users.

Two, generate random numbers through the Random class.In Java, apart from generating random numbers through therandom method,

You can also generate random numbers through a random class.Program developers can create a random number generator byinstantiating a Random object. Such as Random i=new Random () .Through this statement, the Random class is used to create arandom number generator. However, when creating random numbersin this way, the mechanism is different from that of usingRandom method to generate random numbers. When you instantiatethe object in this way, the Java compiler takes the current timeof the system as the seed of the random number generator.Because time changes all the time. If this time is used as theseed of the generator, it can guarantee that the generatedrandom number is really random, and the repetition rate of therandom number generated by it will be greatly reduced.It is convenient to use this method. If you can use the keywordprovided, let the program return to a random integer (using int

nextInt (10)) and so on. However, its return control is a littleharder than the Random method. If you need a system to providea random odd number between 10 and 50, you can't do it with thisRandom class. That is to say, by using this Random class togenerate random numbers, it can only control the upper limit,but can not control the lower bound. In other words, it canspecify the maximum range of random numbers and not specify theminimum range of random numbers. So, in flexibility, it' s alittle bit worse than the Random approach.

In addition, you must create an object by using this method.That is, using the Randow class to create objects. This isdifferent from the Randow method. As in the example above, theRandow method itself is a method in the math class, which canbe called directly, eliminating the method of object creation.For this reason, the author suggests that readers and programdevelopers should use the Random method to create randomnumbers. The Random class is used only when some special randomnumbers are generated. If it is necessary to generate a doubleprecision random number with probability density as Gaussdistribution, it is relatively simple to create a random numberby using the Random class method.

Three, generate random characters.

The two methods described above generate random numeric data.But sometimes the user may also need to generate randomcharacters. In fact, random can also be used to generate randomcharacters. If you can use code to generate a random lower casecharacter: (char) (a '+Math.random () * (' Z '-' a '+1)) . Infact, this is similar to the random number that generates any

two numbers. Through the above code, you can generate arbitraryrandom characters within a range. By properly trimming the code,you can also generate random characters between any twocharacters and any random characters with uppercase characters.The transformation is similar to the random number in any rangementioned above. Readers, if you're interested, you can testit yourself. The teacher leads the door and practices himself.If the author here altogether will all tell you the answer, theimpression is not deep. If you go back and try it yourself, it' seasier to remember.

The author here gives you a hint, only need to according to m+(int) (Math.Random () * (n-m) this statement to adjust (char)(a '+Math.random () * (' Z '-' a '+1)) this code can be.Finally, the author needs to emphasize that when the user entersthe parameters, it is better to check the parameters importedby the user. In order to avoid the user' s incoming parametersdo not meet the established requirements, such as theparameters need to be numerical data, and the introduction ofthe data is character type, and lead to the program runningerror.

杭州王小玉网-美国CERA 2核8G内存19.9元/月,香港,日本E3/16G/20M CN2带宽150元/月,美国宿主机1500元,国内宿主机1200元

官方网站:点击访问王小玉网络官网活动方案:买美国云服务器就选MF.0220.CN 实力 强 强 强!!!杭州王小玉网络 旗下 魔方资源池 “我亏本你引流活动 ” mf.0220.CNCPU型号内存硬盘美国CERA机房 E5 2696v2 2核心8G30G总硬盘1个独立IP19.9元/月 续费同价mf.0220.CN 购买湖北100G防御 E5 2690v2 4核心4G...

Hostodo(年付12美元),美西斯波坎机房Linux VPS主机66折

Hostodo 商家是比较小众的国外VPS主机商,这不看到商家有推送促销优惠在美国西岸的斯波坎机房还有少部分库存准备通过低价格促销,年付低至12美元Linux VPS主机,且如果是1GB内存方案的可以享受六六折优惠,均是采用KVM架构,且可以支付宝付款。第一、商家优惠码优惠码:spokanessd 1GB+内存方案才可以用到优惠码,其他都是固定的优惠低至年12美元。第二、商家促销这里,我们可以看到...

RackNerd:特价美国服务器促销,高配低价,美国多机房可选择,双E526**+AMD3700+NVMe

racknerd怎么样?racknerd今天发布了几款美国特价独立服务器的促销,本次商家主推高配置的服务器,各个配置给的都比较高,有Intel和AMD两种,硬盘也有NVMe和SSD等多咱组合可以选择,机房目前有夏洛特、洛杉矶、犹他州可以选择,性价比很高,有需要独服的朋友可以看看。点击进入:racknerd官方网站RackNerd暑假独服促销:CPU:双E5-2680v3 (24核心,48线程)内存...

java随机数为你推荐
96155北京公积金96155客户服务电话,怎么一步一步进到修改还款额度的地方?金山杀毒怎么样金山杀毒软件咋样?吴晓波频道买粉吴晓波频道学习卡资费?bluestacksBluestacks安卓模拟器是什么机型的?滚动代码来回滚动代码保护气球为什么会那么害怕气球人人逛街包公免费逛街打一成语ejb开发EJB是啥玩意了电子商务网站模板电子商务网站模板有免费的吗?电子商务网站模板哪里有?电子商务网站模板怎么找?srv记录如何验证是否为域控制器创建了 SRV DNS 记录
新加坡主机 oneasiahost ixwebhosting seovip win8升级win10正式版 服务器架设 七夕快乐英文 中国电信测网速 129邮箱 天翼云盘 vip域名 网游服务器 万网主机管理 东莞idc 网通服务器 东莞服务器托管 lamp是什么意思 云销售系统 蓝队云 phpinfo 更多