如何显示不带逗号的数组的最后一个元素? 例如,我想要执行以下 SQL 查询:
从学生中选择姓名、年份,其中 id = 9;
String[] columns = new String[] { name, year };
String query;
int length = columns.length;
int max = 0;
int i;
if (length > 0) {
query = "SELECT ";
for (i = 0; i < length; i++) {
query += columns[i] + ", ";
max++;
if(max <= length){
query += columns[i];
}
}
query += " FROM " + table + " WHERE id = " + column.getId() + ";";
这将执行以下查询:“SELECT name,year,FROM Student WHERE id = 9”(getter 中有一个扫描仪。我在键盘上输入 ID,但如何摆脱最后一个元素中有逗号吗?
到目前为止,我已经尝试创建一个 IF 语句来执行此操作,但失败了。我的逻辑是有道理的,但我不知道如何用代码编写它。
我想说“如果 i 等于 columns[max i - 1],则显示数组的最后一个元素,不带逗号”。
最佳答案
试试这个:
for (i = 0; i < length; i++) {
query += columns[i];
if (i<length-1)
query += ", ";
}
在添加逗号之前,它会检查这是否是列表的最后一个元素。
如果您使用 Java 8,您现在可以在一行中更清晰地完成此操作:
query += String.join(", ", columns);
如果您不使用 Java 8,并且经常这样做,则可以使用 Google Guava在一行中完成:
query += Joiner.on(", ").join(columns);
关于java - Java中显示数组最后一个元素的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26484177/