我有一个功能
fun init(properties: Collection<Map<Any, Any>>?) {
properties?.
filter { it.isNotEmpty() }?.
}
1)我需要过滤空值。 2)我只需要地图,其中所有键和值都为String。 3)对于我想要的每个剩余地图:for each map中的每个键都得到一个值。
我怎么能这样做。对不起,我是Kotlin的新人。
答案 0 :(得分:1)
您可以使用this website检查所有.all { ... }
和.keys
是否为字符串:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body onLoad="JavaScript:test();">
<div class="vrsta2">
<div class="animacija anim8" id="kolo">
<a style="text-decoration: none;" href="opencart/index.php?route=product/category&path=158">
<div class="trgovina1">Enter<br><i class="fi-shopping-cart" style="color: #E7C355; font-size:4rem;"></i></div>
</a>
</div>
<div class="animacija anim8" id="moto">
<a style="text-decoration: none;" href="https://8000plus.si/RAZVOJ/kcgsi/opencart/index.php?route=product/category&path=60">
<div class="trgovina2 ">Enter<i class="fi-shopping-cart " style="color: #E7C355; font-size:4rem; "></i></div>
</a>
</div>
</div>
</body>
请注意,您仍需要一个未经检查的强制转换才能对过滤后的地图进行properties
?.filter {
it.isNotEmpty() &&
it.keys.all { key -> key is String } &&
it.values.all { value -> value is String }
}
?.forEach { /* do some stuff with it */ }
操作,因为编译器无法从键和值检查中推断出类型。