创建数组时莫名其妙的卡住

这是我的一个函数,目的是自己手动分割,不同区间采不同的点。

function splitEs(nJ, minHamiltonian, maxHamiltonian)
    nJ4 = Int(ceil(0.1*nJ))
    println(nJ4)
    nJ3 = Int(ceil(0.2*nJ))
    println(nJ3)
    nJ2 = Int(ceil(0.3*nJ))
    println(nJ2)
    nJ1 = Int(nJ - nJ2 - nJ3 - nJ4)
    println(nJ1)
    Es1 = collect(range(1.00*maxHamiltonian+0.00*minHamiltonian, 0.99*maxHamiltonian+0.01*minHamiltonian, length=nJ1+1))[2:end]
    println(Es1)
    Es2 = collect(range(0.99*maxHamiltonian+0.01*minHamiltonian, 0.95*maxHamiltonian+0.05*minHamiltonian, length=nJ2+1))[2:end]
    println(Es2)
    Es3 = collect(range(0.95*maxHamiltonian+0.05*minHamiltonian, 0.75*maxHamiltonian+0.25*minHamiltonian, length=nJ3+1))[2:end]
    println(Es3)
    Es4 = collect(range(0.75*maxHamiltonian+0.25*minHamiltonian, 0.00*maxHamiltonian+1.00*minHamiltonian, length=nJ4+1))[2:end]
    println(Es4)
    vcat(Es1, Es2, Es3, Es4)
end

然而我nJ=100时运行结果是这样的:

10
20
30
40

也就是它运行完nJ1那行,后面生成Es1就卡住了。
不是很理解。
已经关闭重新打开运行了,到了这里还是卡住。

输入的maxHamiltonian是什么类型的呢

Float64类型。不过不影响我工作啦,后面我换了更好的分割函数。

原始文件已经更改,我也不记得当时具体情境是什么了。