小编Nat*_*son的帖子

如何从Kotlin中的列表中删除带有distinctBy的重复对象?

如何distinctBy在自定义对象列表中使用以删除重复项?我想通过对象的多个属性来确定"唯一性",但不是全部.

我希望这样的东西可行,但没有运气:

val uniqueObjects = myObjectList.distinctBy { it.myField, it.myOtherField }

编辑:我很好奇如何使用distinctBy任意数量的属性,而不仅仅是像我上面的例子中的两个.

kotlin

18
推荐指数
2
解决办法
1万
查看次数

对列表中的数字的子集求和

在Kotlin中有没有办法在过滤的数字列表sum()上进行操作,而不是先实际过滤出元素?

我正在寻找这样的东西:

val nums = listOf<Long>(-2, -1, 1, 2, 3, 4)
val sum = nums.sum(it > 0)
Run Code Online (Sandbox Code Playgroud)

kotlin

11
推荐指数
1
解决办法
3164
查看次数

将非可空字符串数组作为可空字符串数组传递

我有一个函数,它接受Array<String?>:

fun doStuff(words: Array<String?>) {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

有没有办法可以传递Array<String>给这个函数?原样编译器给我一个"类型不匹配"错误.

private val SOME_WORDS = arrayOf("I", "want", "to", "use", "these")

doStuff(SOME_WORDS) // throws a type-mismatch error
Run Code Online (Sandbox Code Playgroud)

我希望尽可能避免做出SOME_WORDS一个arrayOf<String?>(...).

kotlin

9
推荐指数
1
解决办法
721
查看次数

从列表中的每个对象中选择属性

假设我有一个List<Tuple>,其中每个元素的第一个元素是一个字符串。Kotlin中是否有扩展功能来从每个元组中选择第一个元素?

我在寻找类似C#LINQ语法的内容Select

myTuples.Select(t => t.item1)
Run Code Online (Sandbox Code Playgroud)

collections kotlin

6
推荐指数
1
解决办法
1629
查看次数

从stdin读取以空格分隔的整数到int slice中

我正在尝试从stdin中读取两行未知数目的空格分隔的整数。我想将每行整数存储到自己的整数切片中。

例如,我的输入可能如下所示:

1 2 3
4 5 6
Run Code Online (Sandbox Code Playgroud)

我想读成两个[]int

[1,2,3]
[4,5,6]
Run Code Online (Sandbox Code Playgroud)

到目前为止,这就是我所拥有的。scanner.Scan()给了我电话,但是我不确定如何将其转换为[]int

package main
import (
    "fmt"
    "os"
    "bufio"
)

func main() {
    var firstLine []int
    var secondLine []int

    scanner := bufio.NewScanner(os.Stdin)
    for scanner.Scan() {
        t := scanner.Text()
    }
}
Run Code Online (Sandbox Code Playgroud)

go

4
推荐指数
1
解决办法
2169
查看次数

多表更新 - 避免多个WHERE子句

我环顾四周寻找一个类似的问题(我确定在某个地方有一个)但找不到一个问题.

我有一个ID列表,对于每个ID,我需要将该ID行的另一列更新为相同的字符串.

基本上,我想要这样的东西:

List<int> uniqueIDs;

UPDATE my_table
SET certainColumn = "foo bar"
WHERE uniqueID = uniqueIDs[0]
    OR uniqueID = uniqueIDs[1]
    ...
    OR uniqueID = uniqueID[uniqueIDs.Length-1]
Run Code Online (Sandbox Code Playgroud)

我知道这可以通过在for/foreach循环中包含它来实现,但我想知道是否有更好的方法来完成这个,可能在一个数据库连接中?

任何帮助是极大的赞赏.

c# sql sql-server

0
推荐指数
1
解决办法
81
查看次数

标签 统计

kotlin ×4

c# ×1

collections ×1

go ×1

sql ×1

sql-server ×1