글자 이어 붙여 문자열 만들기 : https://school.programmers.co.kr/learn/courses/30/lessons/181915
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
다른 사람 풀이
class Solution {
public String solution(String my_string, int[] index_list) {
StringBuilder sb = new StringBuilder();
for (int idx : index_list)
sb.append(my_string.charAt(idx));
return sb.toString();
}
}
내 풀이
class Solution {
public String solution(String my_string, int[] index_list) {
String answer = "";
for( int i : index_list) {
answer += my_string.charAt(i);
}
return answer;
}
}
[참조] : https://onlyfor-me-blog.tistory.com/317
[JAVA] StringBuilder란? StringBuilder 사용법
자바에서 문자열하면 String을 대개 많이 떠올리고 사용할 것이다. 그런데 이 문자열이 1개 이상 있어서 이것들을 더해야 한다고 하면 어떤 방법을 쓸 수 있을까? 간단하게는 이 방법을 쓸 수 있을
onlyfor-me-blog.tistory.com
[참조] : https://www.codejava.net/java-core/the-java-language/why-use-stringbuffer-and-stringbuilder-in-java
Why Use StringBuffer and StringBuilder in Java
www.codejava.net
일반적인 문자열 연결의 문제점
String sql = "Insert Into Users (name, email, pass, address)";
이 문자열 개체는 나중에 수정할 수 없음. 이는 또한 + 연산자를 사용하여 문자열을 연결할 때마다 새로운 문자열 개체가 생성된다는 것을 의미.
예를 들어,
sql += " values ('";
여기서 두 개의 추가 String 객체가 생성됨.
하나는 " values ('"를 보유하고 다른 하나는 연결 결과를 보유함.
객체 생성은 항상 다른 작업보다 시간이 많이 걸리기 때문에 위의 코드 조각처럼 많은 문자열을 연결하면 중간 문자열 객체가 많이 생성되어 비효율적인 코드가 됨.
문자열 연결 문제를 해결하는 방법은?
StringBuilder, StringBuffer
일반적인 문자열 연결을 대체하려면 StringBuilder를 사용하는 것이 좋습니다 .
그리고 스레드 안전성이 필요할 때 StringBuffer 사용을 고려해보세요.
StringBuilder
StringBuilder sbSql = new StringBuilder("Insert Into Users (name, email, pass, address)");
sbSql.append(" values ('").append(user.getName());
sbSql.append("', '").append(user.getEmail());
sbSql.append("', '").append(user.getPass());
sbSql.append("', '").append(user.getAddress());
sbSql.append("')");
String sql = sbSql.toString();
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Lv2. 삼각 달팽이 (2) | 2024.05.01 |
---|---|
[프로그래머스] Lv2. 행렬 테두리 회전하기 (2) | 2024.04.29 |
[프로그래머스] Lv2. 거리두기 확인하기 (0) | 2024.04.28 |
[프로그래머스] Lv2. 행렬의 곱셈 (0) | 2024.04.25 |
[프로그래머스] 외계어 사전 문제 : sort와 sorted (1) | 2024.04.18 |