scala数组与java数组对比
java数组不是个类,scala数组是类
java定义
int[] a = new int[]{1, 2, 5};
scala定义,scala这个实际是个语法糖,调用了apply方法
val a=Array(1,2,5)
源码上
scala
final class Array[T](_length: Int) extends java.io.Serializable with java.lang.Cloneable {/** The length of the array */def length: Int = throw new Error()// The element at given index.def apply(i: Int): T = throw new Error()// Update the element at given index.def update(i: Int, x: T) { throw new Error() }//Clone the Array.override def clone(): Array[T] = throw new Error()
}
针对不同的泛型T,scala有不同的实现,比如针对Int
/** Creates an array of `Int` objects */// Subject to a compiler optimization in Cleanup, see above.def apply(x: Int, xs: Int*): Array[Int] = {val array = new Array[Int](xs.length + 1)array(0) = xvar i = 1for (x <- xs.iterator) { array(i) = x; i += 1 }array}
java 源码
java 找不到Array的源码~!
scala数组与java数组对比相关推荐
- JS 数组和 Java 数组的区别
JS 数组和 Java 数组的区别 前言 这里的区别呢主要是介绍在函数(方法)中传递一个数组参数时,在函数(方法)内部改变这个数组后,对外部数组有什么影响. 直接为数组重新赋值 TestIt.java ...
- java中 数组声明,java数组声明格式
java 声明动态数组,java对象数组详解,java中声明数组,java数组声明格式 Java 中数组的声明一维数组的声明: 在 Java 中,数组是独立的对象,有自身的方法,不是变量的集合. 数组 ...
- js 数组 改变长度_Java数组,什么是Java数组?Java数组学习
人的生命,似洪水奔流,不遇着岛屿和暗礁,难以激起美丽的浪花. 简介 数组是相同类型数据的有序集合 比如:[1,2,3] ['a','b','c'] 数组描述的是相同类型的若干个数据,按照一定的先后顺序 ...
- java数组末尾添加元素_java数组添加元素,java数组如何添加一个元素
java数组如何添加元素 向数组里添加一个元素怎么添加,这儿总结有三种方法: 1.一般数组是不能添加元素的,因为他们在初始化时就已定好长度了,不能改变长度. 但有个可以改变大小的数组为ArrayLis ...
- java数组 插入,Java数组添加元素
本篇文章帮大家学习java数组添加元素,包含了Java数组添加元素使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. 以下实例演示了如何使用sort()方法对Java数组进行 ...
- java 打印数组数字,Java数组打印出奇怪的数字和文本
本问题已经有最佳答案,请猛点这里访问. 我是编程新手.我相信这个问题的答案是肯定的,但我不知道要搜索什么. 好的,我马上去. 这是我的代码: int[] arr; arr = new int[5]; ...
- java 数组的方法_数组常用方法
[TOC] # 定义 ~~~ //初始化一个长度为8的定长数组,其所有元素均为0 val arr1 = new Array[Int](8) //直接打印定长数组,内容为数组的hashcode值 pri ...
- java定义字符串数组_java字符数组用法总结,java字符串数组的定义与使用
java字符数组,java数组的定义与使用 二维数组 String[] str = new String[5]; //创建一个长度为5的String(字符串)型的一维数组 String[] str = ...
- java反转数组_Java中如何将数组反转?Java数组反转的2种方法(代码示例)
数组操作Java数组如何反转输出?下面本篇文章就给大家介绍2种在java中实现数组反转的简单方法.有一定的参考价值,希望对大家有所帮助.[视频教程推荐:java教程] 方法一:使用循环,交换数组中元素 ...
最新文章
- HTML5时代的Web缓存机制
- boost::mp11::mp_apply_q相关用法的测试程序
- shiro的会话管理:介绍
- jmeter命令行运行-分布式测试
- cdh中hdfs非ha环境迁移Namenode与secondaryNamenode,从uc机器到阿里;
- svn服务器地址更改
- 计算(a+b)*c的值(信息学奥赛一本通-T1007)
- 故障诊断 | 存储Cache丢失导致数据库无法open的案例分享
- 使用Canvas扩展绘制动态ASP.NET Core Blazor气泡图
- UVa 674 Coin Change(完全背包)
- 生信必备技巧之R语言基础教程03——逻辑数据用途及字符串处理
- android开源torrent解析,bt分析之bt种子制作(1)
- 14443-A 与14443-B区别
- 应届毕业生怎么找java工作,应届毕业生怎么能找到高薪工作?
- linux下利用图形化工具合并分区
- 《Linux/Unix设计思想》读书笔记与感想
- 北京对无人车的热情,华尔街都感受到了-1
- 【Vue知识点- No2.】vue脚手架、基础API
- 三情과 生活과의 關係
- 洛谷 4828 Nagisa loves Tomoya 题解
热门文章
- 计算机基础技能应用查询中心,计算机基础应用教程
- swap函数_【Golang】图解函数调用栈
- 循环神经网络_小孩都看得懂的循环神经网络
- pycharm怎么安装python3.6_【python】Mac在Pycharm中导入python3.6(简单易行)
- 既然Tengine比Nginx更强大,为什么Tengine没有取代Nginx呢?
- 基础04继承、super、this、抽象类
- linux dd来加载驱动,linux 加载raid驱动
- libcurl 发送邮件_libcurl smtp发送邮件附件大小限制问题
- php 405,php Restler 405 Method Not Allowed 问题解决啦,restlerallowed_PHP教程
- linux下打包deb文件,制作deb包的三种方法