今天有人問我,怎么樣將List轉成sql中使用的in條件,好像用過,但是又記不清了,因此特意記下來
select * from table where colum in(條件)
List<String> ids = Arrays.asList("1", "2","3"); StringBuffer idsStr = new StringBuffer(); for (int i = 0; i < ids.size(); i++) { if (i > 0) { idsStr.append(","); } idsStr.append("'").append(ids.get(i)).append("'"); } System.out.println(idsStr);
輸出
'1','2','3'
補充
(1)直接 toString()
List<String> ids = Arrays.asList("1", "2","3"); System.out.println(ids.toString());
輸出
[1, 2, 3]
(2)List轉String,拼接
List<String> ids = Arrays.asList("1", "2","3"); System.out.println(String.join(",",ids));
輸出
1,2,3
(3)String轉list,分割
String astr = "a,b,c"; List<String> listString = Arrays.asList(astr.split("','")); System.out.println(listString.toString());