Tag: while循环

Kotlin – 将while循环转换为功能样式

我有以下Kotlin函数: fun func(n: Int): Int { var count = 1 var m = n while(m != 1) { m = if(m.isOdd()) 3 * m + 1 else m / 2 count++ } return count } 我想用一个“功能”风格来写这个简单的算法,使用像map(),count()等Kotlin的操作符。我能想到的最接近的是: fun func(n: Int): Int { return n.toList() .map{ if(it.isOdd()) 3*it+1 else it/2 } .takeWhile { it != 1 } […]

Kotlin – while()的问题

我在Kotlin制作了一个计算器,而且我在解决while()遇到的问题时遇到了问题。在代码的这个特定部分,我试图找到等式中的第一个运算符,但是我需要排除那些表示数字是否为负数的数字(或正数+ ,可选),这些数字需要在括号之间加以表示: (-5) var charay = charArrayOf('+', '-', '*', '/') var op = 0 var reference = 0 var bol = false while( bol == false && op != -1){ println(op) println(bol) println(bol == false && op != -1) op = input.indexOfAny(charay, reference) if (!input.get(op – 1).equals('(')){ bol = true }else{ reference = op + […]