zoukankan      html  css  js  c++  java
  • 快学Scala 第四课 (多维数组,与Java集合的互操作)

    Scala二维数组的定义:

        val arr2 = Array.ofDim[String](2, 2)
        arr2(0)(0) = "aa"
        arr2(1)(0) = "bb"
        for(i <- 0 until arr2.length; j <- 0 until arr2(0).length){
          println(arr2(i)(j))
        }
    

    Scala不规则数组定义:

        val tri = new Array[Array[Int]](2)
        tri(0) = new Array[Int](2)
        tri(1) = new Array[Int](5)
    

    当我们Scala调用java方法时,这个方法可能接受的是java 集合比如java.util.List, 我们完全可以引入scala.collection.JavaConversions里面的隐式转换方法。

        val command = ArrayBuffer("aa", "bb")
        import scala.collection.JavaConversions.bufferAsJavaList
        val pb = new ProcessBuilder(command)
        
        import scala.collection.JavaConversions.asScalaBuffer
        val cmd: Buffer[String] = pb.command()
        
    

    ProcessBuilder构造需要java.util.List对象,我们通过导入隐式转换,ArrayBuffer对象会自动转换为java.util.List对象,反之pb.command()返回的是java.util.List对象,通过隐式转换,自动转换为Buffer对象。

  • 相关阅读:
    浅谈vue对seo的影响
    JavaScript this 关键字
    css3新增特性
    JavaScript 严格模式(use strict)
    let,var,const的区别
    vue slot内部组件插槽
    正则表达式的字母意义
    Array数组对象的方法
    ArcGis for js React 初始化安装
    HTML 基础
  • 原文地址:https://www.cnblogs.com/AK47Sonic/p/7266424.html
Copyright © 2011-2022 走看看