ÀÖÓãµç¾º

  • ½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

    È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

    Ôõô¶¨ÒåScalaÊý×飿ScalaÊý×éÏêϸ½éÉÜ

    ¸üÐÂʱ¼ä:2021Äê05ÔÂ07ÈÕ10ʱ32·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

    ÀÖÓãµç¾º-Ò»ÑùµÄ½ÌÓý£¬²»Ò»ÑùµÄÆ·ÖÊ

    ¶ÔÓÚÿһÃűà³ÌÓïÑÔ£¬Êý×飨Array£©¶¼ÊÇÖØÒªµÄÊý¾Ý½á¹¹Ö®Ò»£¬Ö÷ÒªÓÃÀ´´æ´¢Êý¾ÝÀàÐÍÏàͬµÄÔªËØ¡£ÏÂÃæ£¬Õë¶ÔScalaÊý×éµÄ¶¨ÒåÓëʹÓá¢Êý×é±éÀúÒÔ¼°Êý×éת»»²Ù×÷½øÐÐÏêϸ½éÉÜ¡£

    1.Êý×鶨ÒåÓëʹÓÃ

    ScalaÖеÄÊý×é·ÖΪ¶¨³¤Êý×éºÍ±ä³¤Êý×飬ÕâÁ½ÖÖÊý×éµÄ¶¨Ò巽ʽÈçÏ£º

    new Array[T](Êý×鳤¶È) //¶¨Ò嶨³¤Êý×é
    
    ArrayBuffer[T]()    //¶¨Òå±ä³¤Êý×é

    ÉÏÊöÓï·¨¸ñʽÖУ¬¶¨Ò嶨³¤Êý×飬ÐèҪʹÓÃnew¹Ø¼ü×Ö£¬¶ø¶¨Òå±ä³¤Êý×éʱ£¬ÔòÐèÒªµ¼°üimport scala.collection.mutable.ArrayBuffer¡£[T]±íʾµÄÊÇÊý×éÔªËØµÄÀàÐÍ£¬TΪ·ºÐÍ¡£

    µ±ÎÒÃǶ¨ÒåºÃÊý×éºó£¬¿ÉÒÔ¶ÔÊý×é½øÐÐ×·¼Ó¡¢²åÈëÒÔ¼°É¾³ýµÈ²Ù×÷¡£Õë¶Ô²»Í¬µÄÊý×é²Ù×÷£¬ArrayÌṩÁ˲»Í¬µÄAPI¡£

    ÏÂÃæ£¬ÎÒÃÇͨ¹ýÒ»¸öÀý×ÓÀ´ÑÝʾScalaÊý×é¼òµ¥Ê¹Ó㬾ßÌå´úÂëÈçÎļþ1Ëùʾ¡£

    Îļþ1 ArrayDemo.scala

       import scala.collection.mutable.ArrayBuffer
    
       object ArrayDemo {
    
         def main(args: Array[String]) {
    
           //³õʼ»¯Ò»¸ö³¤¶ÈΪ8µÄ¶¨³¤Êý×飬ÆäËùÓÐÔªËØ¾ùΪ0
    
           val arr1 = new Array[Int](8)
    
           //Ö±½Ó´òÓ¡¶¨³¤Êý×飬ÄÚÈÝΪÊý×éµÄhashcodeÖµ
    
           println(arr1)
    
           //±ä³¤Êý×飨Êý×黺³å£©
    
           //Èç¹ûʹÓÃÊý×黺³å£¬ÐèÒªµ¼Èëimport scala.collection.mutable.ArrayBuffer
    
          val ab = ArrayBuffer[Int]()
    
          //ÏòÊý×黺³åµÄβ²¿×·¼ÓÒ»¸öÔªËØ
    
          //+=β²¿×·¼ÓÔªËØ
    
          ab += 1
    
          println(ab)
    
          //×·¼Ó¶à¸öÔªËØ
    
          ab += (2, 3, 4, 5)
    
          println(ab)
    
          //×·¼ÓÒ»¸öÊý×é++=
    
          ab ++= Array(6, 7)
    
          println(ab)
    
           //×·¼ÓÒ»¸öÊý×黺³å
    
          ab ++= ArrayBuffer(8,9)
    
          println(ab)
    
          //´òÓ¡Êý×黺³åab
    
          //ÔÚÊý×éij¸öλÖòåÈëÔªËØÓÃinsert£¬´Óijϱê²åÈë
    
          ab.insert(0, -1, 0)
    
          println(ab)
    
          //ɾ³ýÊý×éij¸öλÖõÄÔªËØÓÃremove°´ÕÕϱêɾ³ý
    
          ab.remove(0)
    
          println(ab)
    
        }
    
      }
    ÉÏÊö´úÂëÖУ¬µÚ5-7ÐдúÂ붨ÒåÁËÒ»¸ö¶¨³¤Êý×éarr1²¢´òÓ¡Êý×é¶ÔÏó£»µÚ10-30ÐдúÂ붨ÒåÁËÒ»¸ö±ä³¤Êý×éab²¢¶ÔÊý×é¶ÔÏó½øÐÐÁË×·¼Ó¡¢²åÈëºÍɾ³ýµÈ²Ù×÷¡£

    ÔËÐÐÎļþ1ÖеĴúÂ룬¿ØÖÆÌ¨Êä³ö½á¹ûÈçͼ1Ëùʾ¡£

    Êý×éµÄ¶¨ÒåÓëʹÓÃÊý×é±éÀúÒÔ¼°Êý×éת»»²Ù×÷

    ͼ1 ScalaÊý×鶨ÒåÓëʹÓõÄÊä³ö½á¹û

    2.Êý×é±éÀú

    ScalaÖУ¬Èç¹ûÏëÒª»ñÈ¡Êý×éÖеÄÿһ¸öÔªËØ£¬ÔòÐèÒª½«Êý×é½øÐбéÀú²Ù×÷¡£Êý×éµÄ±éÀúÓÐÈýÖÖ·½Ê½£¬·Ö±ðÊÇforÑ­»·±éÀú¡¢whileÑ­»·±éÀúÒÔ¼°do...whileÑ­»·±éÀú¡£ÔÚÕâÀÎÒÃÇʹÓÃforÑ­»·¶ÔÊý×é½øÐбéÀú²Ù×÷¡£¾ßÌå´úÂëÈçÎļþ2Ëùʾ¡£

    Îļþ2 ArrayTraversal.scala

       object ArrayTraversal {
    
         def main(args: Array[String]) {
    
           var myArr = Array(1.9, 2.9, 3.4, 3.5)
    
           // ´òÓ¡Êä³öËùÓеÄÊý×éÔªËØ
    
           for (x <- myArr) {
    
             print(x + " ")
    
           }
    
           //´òÓ¡»»ÐÐ
    
           println()
    
          // ¼ÆËãÊý×éËùÓÐÔªËØµÄ×ܺÍ
    
          var total = 0.0;
    
          for (i <- 0 to (myArr.length - 1)) {
    
            total += myArr(i);
    
          }
    
          println("×ܺÍΪ " + total);
    
          // ²éÕÒÊý×éÖеÄ×î´óÔªËØ
    
          var max = myArr(0);
    
          for (i <- 1 to (myArr.length - 1)) {
    
            if (myArr(i) > max) max = myArr(i);
    
          }
    
          println("×î´óֵΪ " + max);
    
        }
    
      }

    ÉÏÊö´úÂëÖУ¬µÚ3-7ÐдúÂ붨ÒåÁËÒ»¸ö¶¨³¤Êý×émyArr²¢Í¨¹ý±éÀú´òÓ¡¸ÃÊý×飻µÚ11-15ÐдúÂ붨ÒåÒ»¸ö±äÁ¿total²¢¸³ÖµÎª0.0£¬Í¨¹ý±éÀú¼ÆËãÊý×éËùÓÐÔªËØµÄ×ܺͣ»µÚ17-21Ðж¨ÒåÁËÒ»¸ö±äÁ¿max²¢¸³ÖµÎªÊý×émyArrÖеĵÚÒ»¸öÔªËØ£¬Í¨¹ý±éÀú²éÕÒ³ömyArrÊý×éÖеÄ×î´óÔªËØ¡£

    ÔËÐÐÎļþ2ÖеĴúÂ룬¿ØÖÆÌ¨Êä³ö½á¹ûÈçͼ2Ëùʾ¡£

    Êý×éµÄ¶¨ÒåÓëʹÓÃÊý×é±éÀúÒÔ¼°Êý×éת»»²Ù×÷

    ͼ2 ±éÀúÊý×éµÄ¿ØÖÆÌ¨´òÓ¡Êä³ö

    3.Êý×éת»»

    Êý×éת»»¾ÍÊÇͨ¹ýyield¹Ø¼ü×Ö½«Ô­Ê¼µÄÊý×é½øÐÐת»»£¬»á²úÉúÒ»¸öеÄÊý×飬Ȼ¶øÔ­Ê¼µÄÊý×é±£³Ö²»±ä¡£ÏÂÃæÎÒÃÇÀ´ÑÝʾÊý×éµÄת»»£¬¶¨ÒåÒ»¸öÊý×飬ʵÏÖ½«Å¼ÊýÈ¡³ö³ËÒÔ10ºóÉú³ÉÒ»¸öеÄÊý×飬¾ßÌå´úÂëÈçÎļþ3Ëùʾ¡£

    Îļþ3 ArrayYieldTest.scala

       object ArrayYieldTest {
    
         def main(args: Array[String]) {
    
           //¶¨ÒåÒ»¸öÊý×é
    
           val arr = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
    
           //½«Å¼ÊýÈ¡³ö³ËÒÔ10ºóÔÙÉú³ÉÒ»¸öеÄÊý×é
    
           val newArr = for (e <- arr if e % 2 == 0) yield e * 10
    
           println(newArr.toBuffer)
    
         }
    
       }

    ÉÏÊö´úÂëÖУ¬µÚ4-7ÐдúÂ붨ÒåÁËÒ»¸ö¶¨³¤Êý×éarr²¢Í¨¹ýÇóżºÍËãÊõ²Ù×÷£¬½«Êý×éarrת»»³ÉÒ»¸öÐÂÊý×énewArr£¬×îÖÕ´òÓ¡newArrÊý×é¡£

    ÔËÐÐÎļþ3ÖеĴúÂ룬¿ØÖÆÌ¨Êä³ö½á¹ûÈçͼ3Ëùʾ¡£

    Êý×éµÄ¶¨ÒåÓëʹÓÃÊý×é±éÀúÒÔ¼°Êý×éת»»²Ù×÷
    ͼ3 Êý×éת»»µÄ¿ØÖÆÌ¨Êä³ö





    ²ÂÄãϲ»¶£º

    Scala±à³ÌµÄÊý¾ÝÀàÐÍÓм¸ÖÖ£¿

    ScalaµÄÉùÃ÷ÖµºÍ±äÁ¿¡¾´óÊý¾ÝÎÄÕ¡¿

    WindowsϵͳÖÐÔõÑùÏÂÔØ°²×°Scala²å¼þ£¿

    ÀÖÓãµç¾ºPython+´óÊý¾Ý¿ª·¢Åàѵ

    0 ·ÖÏíµ½£º
    ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
    ¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿