加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

在scala中添加一个对象列表

发布时间:2020-12-16 18:55:32 所属栏目:安全 来源:网络整理
导读:我试图添加和反对列表而不仅仅是一个数字,所以当你回答一个例子,如果你可以使用像我的二手车的例子或水果之类的东西 我一直在寻找每个地方,我看到的所有例子都只是在列表中添加数字. 我试图将一些 Java代码转换为scala 转换有问题的java代码是 ArrayList use
我试图添加和反对列表而不仅仅是一个数字,所以当你回答一个例子,如果你可以使用像我的二手车的例子或水果之类的东西
我一直在寻找每个地方,我看到的所有例子都只是在列表中添加数字.
我试图将一些 Java代码转换为scala
转换有问题的java代码是

ArrayList usedCarList = new ArrayList();
UsedCars usedCar = new UsedCars();
usedCarList.add(usedCar);

现在我看了几个例子,但是一旦我开始尝试使用对象,它们似乎不起作用

var b = List[Int](); 
b ::= 1; 
b ::= 2; 
b ::= 3;

我尝试了下面列出的一些东西1.

var usedCarList = List();
def addCar (usedCarList: List[UsedCars]){
var usedCar = new UsedCars();
series of set operations on the usedCar
usedCar :: usedCarList;
println(usedCarList.length);
}

当我检查列表的大小时,它总是空的

解决方法

Scala的List和Java的ArrayList之间存在根本区别:Scala的List是不可变的.

不仅仅是只读 – Java中的只读集合仍然可以由创建它的人改变.在Scala中,任何人都无法更改列表.

现在,让我们通过你展示“工作”的例子来调和:b :: = 1.这个例子相当于b = 1 :: b,所以它不会改变列表.相反,它正在创建一个新列表,并将其分配给b.这可能听起来效率低下,但它实际上非常快,因为List是一个持久的数据结构(查看更多信息).

因此,对您的问题最明显的答案是使用不同类型的数据结构. Scala与ArrayList最接近的是ArrayBuffer.

但是,还有另一种可能性.而不是更改列表并且不返回任何内容,返回新列表.这可能需要对代码结构进行其他更改,因为没有关于它的细节,我不会推测它们可能是什么.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读