gpt4 book ai didi

java - Lisp : Don't know how to create ISeq from Java. lang.Integer

转载 作者:太空宇宙 更新时间:2023-11-03 18:51:34 26 4
gpt4 key购买 nike

我正在尝试打开一个文本文件并将其拆分为 Clojure 中的整数值列表。我每次都会收到此错误代码,但我不知道为什么。我是 Lisp 开发的新手(我的意思是我大约两个小时前就开始了),所以我可能问了一个非常愚蠢的问题。干杯

(ns clojure.examples.hello
(:gen-class))

(ns clojure-noob.core)

(defn toInt [s]
(Integer/parseInt (re-find #"\A-?\d+" s)))
(defn toIntList [s]
(if (not s) ()
(list* (toInt (first (toInt s)) (toIntList first((rest
(clojure.string/split s #" "))))))
)
)

(println (str (toIntList (slurp "hab.txt"))))

最佳答案

您收到该错误消息的原因是(在某处)您错误地调用了一个需要带有整数参数的序列参数的函数。这可能是这里的一个地方:

(first (toInt s))

first 函数需要一个序列 (ISeq),但 toInt 返回一个整数。

只是为了确认:

(first (java.lang.Integer/parseInt "10"))

IllegalArgumentException Don't know how to create ISeq from: java.lang.Integer

关于java - Lisp : Don't know how to create ISeq from Java. lang.Integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47801013/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com