当前位置: 首页 > 知识库问答 >
问题:

Java和Kotlin for-loop语法的区别?

冯翔
2023-03-14

我最近开始学习静态编程语言,我注意到静态编程语言的for循环语法不同于传统的for循环语法,对我来说有点困惑...我试图在谷歌上搜索它,但没有得到我的答案。

如何复制下面的Java for循环?

for (int i = 0; i <= 100; i++) {
  System.out.println(i);
}

共有2个答案

籍英叡
2023-03-14
val scanner = Scanner(System.`in`)

var nos = Array<Int>(5) { 0 }

for (i in 1..3) {
    nos[i] = scanner.nextInt()
}

println("Given values $nos")

在这里,您可以在 1..3 中看到 i,并且不需要声明 var i : Int = 1,因为它将在循环中为您声明。对于这个问题,你也不需要循环中的i = i 1。

姚德容
2023-03-14

下面是一个迭代 100 次的 Java for 循环:

for (int i = 0; i <= 100; i++) {
  System.out.println(i);
}

以下是Kotlin的等价物:

for (i in 0..100) {
  println(i)
}

下面是一个Java for循环,它将遍历一个列表:

for (int i = 0; i < list.size(); i++) {
  Object item = list.get(i);

  // Do something with item
}

Kotlin 等效项:

for (i in list.indices) {
  val item = list[i]

  // Do something with item
}

这是另一种用于迭代列表的静态编程语言等效物:

for (i in 0 until list.size) {
  val item = list[i]

  // Do something with item
}

Java用于每个循环:

for (Object item : list) {
  // Do something with item
}

每个循环的静态编程语言:

for (item in list) {
  // Do something with item
}
 类似资料:
  • 问题内容: 我在这里面临着奇怪的事情。如果我缺少什么,请帮助我了解。我的if条件应该是: 但是我写错了: 而且我的Eclipse编译器不要求我对其进行更正。然后,我假设没有编译时间或检查异常。所以: 返回布尔值? 问题答案: 是的,分配给您的变量并返回。因此,即使它通常是一个错误,它也是一种有效的语法。 避免这种错别字比较安全。

  • 我正在做一个项目,帮助客人报名参加派对。 当事人必须存在于数据中 当然,想要的票的数量必须少于可用的票 我真的很难再添加一个条件——检查输入是否高于0。 我将整个for循环放入了另一个if语句中,正如您所看到的:if(ticketsWanted) 如果输入了低于1的内容,它会打印“请输入正数” 然而,它也打印了“这个派对不存在或者已经预订满了。”又来了... 基本上是在系统之后。出来println

  • 本文向大家介绍Java和C语言之间的区别,包括了Java和C语言之间的区别的使用技巧和注意事项,需要的朋友参考一下 Java和C都是编程世界中最流行的编程语言,由于它们的各种重要特征和特性,这两种语言都在全球范围内被广泛使用。 根据它们的功能,以下是Java和C之间的重要区别 序号 键 爪哇 C 1 介绍了 Java是在引入年份之后以C语言开发的,它是由James Gosling在1995年开发的

  • 本章将指导您完成Scala编程语言中的循环控制结构。 当您需要多次执行代码块时,可能会出现这种情况。 通常,语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推。 编程语言提供各种控制结构,允许更复杂的执行路径。 循环语句允许我们多次执行语句或语句组,以下是大多数编程语言中循环语句的一般形式 - 流程图 (Flow Chart) Scala编程语言提供以下类型的循环来处理循环需

  • 有些任务需要一遍又一遍地完成,比如读取文件的每个记录直到结束。 COBOL中使用的循环语句是 - 通过执行 执行直到 执行时间 执行变化 通过执行 Perform Thru用于通过给出序列中的第一个和最后一个段落名称来执行一系列段落。 执行最后一段后,将返回控件。 In-line Perform PERFORM中的语句将被执行,直到达到END-PERFORM。 语法 (Syntax) 以下是在线执

  • 问题内容: 我试图弄清楚 方法签名中的 Throw 和Java中的 Throw语句 之间的区别。方法签名的抛出如下: 抛出语句如下: 据我了解,方法内签名是一种通知,通知该方法可能会抛出此类异常。语句是根据情况实际抛出创建的对象的东西。从这个意义上说,如果方法中存在 throw* 语句,则应始终出现 throw in方法签名。 * 但是,以下代码似乎没有这样做。代码来自库。我的问题是为什么会这样?