IT story/java

[ lambda ] array to list

자랑이다 2022. 2. 8. 12:24
728x90
반응형

mybatis에서 in query를 사용하기 위해 list 형태의 파라미터를 넘겼다.

그리고 mybatis에서는 <foreach>를 사용하여 루프 돌림.

 

이때 String[] -> List 형태로 변환하여 넘기는 방법.

 

1. for 기본

List<String> AA = new ArrayList<String>();
for(int i=0; i< strArray.length; i++) {
     AA.add(strArray[i].toString());
}

 

2. 향상된 for문

List<String> BB = new ArrayList<String>();
for(String str : strArray) {
     BB.add(str);
}

 

3.  lambda

List<String> CC = Arrays.asList(strArray).stream().collect(Collectors.toCollection(ArrayList::new));

List<String> DD = Arrays.asList(strArray).stream().collect(Collectors.toList());

List<String> EE = Stream.of(strArray).map(String::toString).collect(Collectors.toList());

mybatis에서 foreach 돌릴때 제대로 세팅안해서 에러나는데

lambda식을 잘 못다루는거인 줄 알고 이것저것 시도했던 방법들

 

결과적으로 lambda식 셋 모두 array to list로 변환되며

mybatis의 foreach도 성공적으로 돌았다.

 

 

728x90

'IT story > java' 카테고리의 다른 글

[수동 validateor] Annotation validator  (0) 2022.09.26
[JPA] @LastModifiedDate 자동 저장 안될 때.  (0) 2021.07.19