[JAVA] 자바 - Stirng 클래스 Quiz 풀이 모음(2) ⭐⭐
by mini_min[JAVA]
자바 - Stirng 클래스
Quiz 풀이 모음
✔️ 계좌번호 연속 만들기
계좌번호를 연속으로 만들기 위해 할 일, 메소드 호출할수록 뒤에 카운트가 늘어나야함.
class Bank
private String accountno = "020-08-0000170";
// 카운트를 올리기 위해서는, 문자열에서 "-" 하이픈 앞으로는 쭉 빼버리기
Stirng s;
int n;
public String generate()
//020-08- 전후로 나누기
String s1 = accountno.substring(0, accountno.lastIndexOf("-")+1) ;
String s2 = accountno.substring(accountno.lastIndexOf("-")+1);
n = Integer.ParseInt(s2)+1;
accountno = s1 + String.format("%07d", n);
return accountno;
💡 문제 해결하기
하이픈을 기점으로 앞뒤를 나눌 생각을 할 것 !
맨 뒤에 문자열은 정수형으로 바꾸면서 동시에 +1을 해주기!
그럼 이후에 메소드 호출 될 때 마다, 바뀐 문자열이 나오고 문자열을 다시 정수형으로 바꾸고 +1 해줘서 매번 새로운 계좌 번호가 나온다!
✔️ StringBuilder 로 패스워드 만들기(가변적)
패스워드에 들어갈 문자열들 정의하기. 난수 발생시킬 때마다, substring 으로 위치 출력하는게 좋을 듯
public state Stirng pw()
//10자리 무작위 패스워드
// 가변적인 String 이니까 스트링빌더 사용
StringBuilder sb1 = new StringBuilder();
String s = "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopadsfghjklzxcvbnm!@#$%^&*_+-";
int n;
for(int i=0; i<10; i++)
n = (int)(math.random()*s.length));
//추가추가추가하기
sb1.append(s.substring(n,n+1));
return sb1.toString;
//String빌더 값은 스트링으로 다시 바꿔야함.
💡 문제 해결하기
가변적인 문자열을 받아야하기 때문에, 스트링빌더를 사용해야한다. 먼저, 패스워드가 될 문자들 중에서 무작위로 발생하는 n번째 위치(난수) 를 문자열에서 추출하여 append 한다. (스트링빌더에서 추가는 append!!)
스트링빌더에 추가추가추가 하고, 이후 문자열로 바꾸기!
'Java' 카테고리의 다른 글
[JAVA] 자바 - Math 및 Random 클래스 (0) | 2022.07.25 |
---|---|
[JAVA] 자바 - Date 클래스 (getTime, SimpleDateFormat) (0) | 2022.07.24 |
[JAVA] 자바 - Stirng 클래스 Quiz 풀이 모음(1) ⭐⭐ (0) | 2022.07.24 |
[JAVA] 자바 - StringTokenizer 클래스 이해하기! (0) | 2022.07.24 |
[JAVA] 자바 - StringBuilder, StringBuffer 클래스 (0) | 2022.07.24 |
블로그의 정보
개발자 미니민의 개발로그
mini_min