欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用Scala生成隨機數(shù)的方法示例

 更新時間:2019年06月16日 15:13:21   作者:LittleLawson  
這篇文章主要介紹了使用Scala生成隨機數(shù)的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一.使用Scala生成隨機數(shù)

1.簡單版本:

/*
1.you can use scala.util.Random.nextInt(10) to produce a number between 1 and 10
2.at the same time,you nextInt(100) to produce a number between 1 and 100
*/
object Test {
 def main(args: Array[String]) {
  var i = 0
  while(i < 10)
   var str = scala.util.Random.nextInt(100).toString
   println(str)
   i = i+1
  }
 }
}

 

 

2.復雜版本:

object Test{
 def main(args: Array[String]): Unit = {
  val wordPerMessage = 4
  var i = 0
  while(i<10){
   /*
   1.the (1 to 1) is meaning that only have one circulation.
   */
   (1 to 1).foreach { messageNum => {
    //[There's only three cycle]
    val str: Seq[String] = (1 to wordPerMessage).map(x => scala.util.Random.nextInt(10).toString)
    val str1 = str.mkString(" ")//separate str1 with space
    println(str)
    }
   }
   i = i +1
  }
 }
}

PS:scala生成一組不重復的隨機數(shù)

1、循環(huán)獲取隨機數(shù),再到 list中找,如果沒有則添加

def randomNew(n:Int)={
 var resultList:List[Int]=Nil
 while(resultList.length<n){
  val randomNum=(new Random).nextInt(20)
  if(!resultList.exists(s=>s==randomNum)){
   resultList=resultList:::List(randomNum)
  }
 }
 resultList
}

這種只適合數(shù)量比較少的情況

2、每次生成一個隨機數(shù)index,將index作為數(shù)組下標取相應的元素,然后去除該元素,下一次生成隨機數(shù)的范圍減1,

def randomNew2(n:Int)={
 var arr= 0 to 20 toArray
 var outList:List[Int]=Nil
 var border=arr.length//隨機數(shù)范圍
 for(i<-0 to n-1){//生成n個數(shù)
  val index=(new Random).nextInt(border)
  println(index)
  outList=outList:::List(arr(index))
  arr(index)=arr.last//將最后一個元素換到剛取走的位置
  arr=arr.dropRight(1)//去除最后一個元素
  border-=1
 }
 outList
}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 如何通過jstack命令dump線程信息

    如何通過jstack命令dump線程信息

    這篇文章主要介紹了如何通過jstack命令dump線程信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • Java 關于遞歸的調(diào)用機制精細解讀

    Java 關于遞歸的調(diào)用機制精細解讀

    關于遞歸是什么,簡單的說: 遞歸就是方法自己調(diào)用自己,每次調(diào)用時 傳入不同的變量.遞歸有助于編程者解決復雜的問題,同時可以讓代碼變得簡潔
    2021-10-10
  • Java中Comparable與Comparator的區(qū)別解析

    Java中Comparable與Comparator的區(qū)別解析

    這篇文章主要介紹了Java中Comparable與Comparator的區(qū)別解析,實現(xiàn)Comparable接口,重寫compareTo方法,一般在實體類定義的時候就可以選擇實現(xiàn)該接口,提供一個默認的排序方式,供Arrays.sort和Collections.sort使用,需要的朋友可以參考下
    2024-01-01
  • 使用JMX監(jiān)控Zookeeper狀態(tài)Java API

    使用JMX監(jiān)控Zookeeper狀態(tài)Java API

    今天小編就為大家分享一篇關于使用JMX監(jiān)控Zookeeper狀態(tài)Java API,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Java中JFinal框架動態(tài)切換數(shù)據(jù)庫的方法

    Java中JFinal框架動態(tài)切換數(shù)據(jù)庫的方法

    這篇文章主要介紹了Java中JFinal框架動態(tài)切換數(shù)據(jù)庫的方法,本文通過兩種方法結合示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 通俗易懂學習java并發(fā)工具類-Semaphore,Exchanger

    通俗易懂學習java并發(fā)工具類-Semaphore,Exchanger

    這篇文章主要介紹了java并發(fā)工具類-Semaphore,Exchanger,java并發(fā)工具類有很多,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,下面小編帶大家來一起學習一下吧
    2019-06-06
  • JAVA中反射機制和模塊化的深入講解

    JAVA中反射機制和模塊化的深入講解

    很多剛學Java反射的同學可能對反射技術一頭霧水,為什么要學習反射,學習反射有什么作用,下面這篇文章主要給大家介紹了關于JAVA中反射機制和模塊化的相關資料,需要的朋友可以參考下
    2021-09-09
  • 如何利用java實現(xiàn)生成PDF文件

    如何利用java實現(xiàn)生成PDF文件

    前段時間因為相關業(yè)務需求需要后臺生成pdf文件,下面這篇文章主要給大家介紹了關于如何利用java實現(xiàn)生成PDF文件的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • 深入dom4j使用selectSingleNode方法報錯分析

    深入dom4j使用selectSingleNode方法報錯分析

    本篇文章是對dom4j使用selectSingleNode方法報錯進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • MyBatis之自查詢使用遞歸實現(xiàn) N級聯(lián)動效果(兩種實現(xiàn)方式)

    MyBatis之自查詢使用遞歸實現(xiàn) N級聯(lián)動效果(兩種實現(xiàn)方式)

    這篇文章主要介紹了MyBatis之自查詢使用遞歸實現(xiàn) N級聯(lián)動效果,本文給大家分享兩種實現(xiàn)方式,需要的的朋友參考下吧
    2017-07-07

最新評論