Kotlin NoSuchElementException java.lang.Scanner
我不知道错误是什么,我很难适应这种语言,任何帮助都非常感谢 错误:Kotlin NoSuchElementException java.lang.Scanner,kotlin,Kotlin,我不知道错误是什么,我很难适应这种语言,任何帮助都非常感谢 错误: Exception in thread "main" java.util.NoSuchElementException at java.base/java.util.Scanner.throwFor(Scanner.java:937) at java.base/java.util.Scanner.next(Scanner.java:1594) at java.base/java.uti
Exception in thread "main" java.util.NoSuchElementException
at java.base/java.util.Scanner.throwFor(Scanner.java:937)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
at Packing.<init>(Packing.kt:100)
at PackingKt.main(Packing.kt:7)
at PackingKt.main(Packing.kt)
线程“main”java.util.NoSuchElementException中的异常
位于java.base/java.util.Scanner.throwFor(Scanner.java:937)
位于java.base/java.util.Scanner.next(Scanner.java:1594)
位于java.base/java.util.Scanner.nextInt(Scanner.java:2258)
位于java.base/java.util.Scanner.nextInt(Scanner.java:2212)
包装时。(包装kt:100)
包装主管道处(包装主管道:7)
包装主管道处(包装主管道)
我的代码:
import java.io.InputStream
import java.util.Scanner
fun main() {
val input = Scanner(InputStream.nullInputStream())
val packing1 = Packing(input)
val packing2 = Packing(input)
val packing3 = Packing(input)
var total = 0
var min = 0
val combinations = ArrayList<String>()
for(a in 1..3){
for(b in 1..3){
for(c in 1..3){
//here is a piece of code
}
}
combinations.sort()
println("${combinations.get(0)} $min")
}
}
class Packing {
var brownBottles = 0
var greenBottles = 0
var clearBottles = 0
constructor (input : Scanner){
brownBottles = input.nextInt() //this is the line 100
greenBottles = input.nextInt()
clearBottles = input.nextInt()
}
}
导入java.io.InputStream
导入java.util.Scanner
主要内容(){
val输入=扫描仪(InputStream.nullInputStream())
val packing1=包装(输入)
val packing2=包装(输入)
val packing3=包装(输入)
var总计=0
var最小值=0
val组合=ArrayList()
对于(1..3中的a){
对于(1..3中的b){
对于(1..3中的c){
//这是一段代码
}
}
组合。排序()
println(“${combines.get(0)}$min”)
}
}
类包装{
var brownBottles=0
var greenbalgs=0
var=0
构造函数(输入:扫描仪){
brownBottles=input.nextInt()//这是第100行
绿瓶=input.nextInt()
ClearFlags=input.nextInt()
}
}
其思想是通过控制台输入值,初始化对象的变量。我只需要使用
val input = Scanner(System.`in`)
如果在控制台中输入9个整数,则打包对象的初始化应该可以工作。
nullInputStream()对我来说毫无意义。用它从控制台读取数据是不可能的
组合列表为空,因此在此处访问时引发异常
println("${combinations.get(0)} $min")
为什么要将
InputStream.nullInputStream()
传递给Scanner
?也许你需要扫描仪(System.`in`)
?我试过使用System.in,但我遇到了一个错误,我将尝试使用它