gpt4 book ai didi

java - Groovy String 将引号添加到字符串的开头而不是末尾

转载 作者:太空宇宙 更新时间:2023-11-04 14:39:04 24 4
gpt4 key购买 nike

public ArrayList<String> findLocationOfXMLDocumentsWithSkills(ArrayList<String> skillsToFind){

TreeMap<Integer, ArrayList<String>> fileLocationToNumberOfHits = new TreeMap<Integer, ArrayList<String>>();

def sql = Sql.newInstance(/jdbc:sqlite:C:\Users\pdfFileSystem.db/, "org.sqlite.JDBC")
sql.execute('CREATE TABLE IF NOT EXISTS skillList(SKILL TEXT NOT NULL, xmlFile0 TEXT, xmlFile1 TEXT, xmlFile2 TEXT)')

fileLocationToNumberOfHits.put(1, new ArrayList<String>());

for(String skill: skillsToFind){

skill = skill.toUpperCase();
def query = 'SELECT * FROM skillList WHERE SKILL="' + skill + '"'
println query
sql.eachRow(query) { row ->

...
}
...
}
...
}

所以,这是我尝试使用 Grails 运行的代码。

除了 for 循环的最后一次迭代之外,println 查询将打印所有迭代“从技能列表中选择 * WHERE SKILL ="{skill}其中 {skill} 替换为任何技能。

为什么用 " 替换字符串的第一个字符,而不是将其添加到字符串的末尾?

我在同一个类的其他函数中运行了相同的代码,并且它可以工作正如它应该的那样。

有人知道这是怎么回事吗?

最佳答案

替换:

def query = 'SELECT * FROM skillList WHERE SKILL="' + skill + '"'

对于:

def query = "SELECT * FROM skillList WHERE SKILL='$skill'"

有关 groovy 中字符串和 GString 的更多信息: http://groovy.codehaus.org/Strings+and+GString

关于java - Groovy String 将引号添加到字符串的开头而不是末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25190227/

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