gpt4 book ai didi

scala - scala中的交换位置列表

转载 作者:行者123 更新时间:2023-12-01 07:00:42 25 4
gpt4 key购买 nike

我有一个不可变的列表,我需要交换其中的位置。有什么简单的方法吗?

下面是我的代码:

def swap(i:Int, j:Int,li:List[T]):List[T]={
if(i>=li.size && j >=li.size)
throw new Error("invalie argument");

val f = li(i)
li(i) = li(j) //wont work
li(j) = f;//wont work
li;
}

最初,我通过将其转换为数组、更改位置然后再次将其转换为列表来尝试它。有什么简便的方法吗?

最佳答案

这样做的一个简单(但不是很有效的方法)是

val l = List(1,2,3)
l: List[Int] = List(1, 2, 3)

l.updated(0,l(2)).updated(2,l(0))
res1: List[Int] = List(3, 2, 1)

关于scala - scala中的交换位置列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13786297/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com