반응형
10진법으로 표현된 숫자를
2진법으로 변환하는 프로그램을 만드시오
먼저 10진법 수를 이진법으로 변환하기 위해서 10진법 수 이하 a를 2로 나누어
각 실행 한 번에 나머지를 차례대로 입력하고 마지막에 이를 거꾸로 뒤집어 출력해야 한다.
public static void main(String[] args){
int binary = 2022; // 2진법으로 변환할 수
String a="";
while (binary >= 1) {
a+= (binary % 2)+""; // 2로 나눈 나머지를 a에 누적
binary /= 2; // 다음 수를 위해 2로 나누기
}
StringBuffer aa= new StringBuffer(a);
//a를 StringBuffer형으로 캐스팅
aa.reverse();
//캐스팅한 aa를 reverse()메서드로 문자열 뒤집기
System.out.println(aa);
}
문자열(Sting)의 내용을 최대한 간결하게 순서를 변화시키는 방법을 찾는 게 필요했다.
이전의 방법을 사용하면 String을 toChaArray()로 char 타입의 배열에 넣고 순서를 치환했을 것이다
reverse() 메서드를 이용하면 여러 단계를 보다 짧게 코딩할 수 있게 된다
StringBuffer(): String과 다르게 객체를 새로 선언하지 않고, 객체를 변화시키는 클래스.
reverse(): StringBuffer() 나 StringBuilder()에서 객체가 가진 문자열을 뒤집는 메서드.
반응형
'코딩공부 > JAVA' 카테고리의 다른 글
JAVA #13 : 배열의 최댓값, 최소값, 중간값 출력 (0) | 2022.06.02 |
---|---|
JAVA #12 : 혼합된 소금물 농도 구하기, 소금의 양 구하기 (0) | 2022.05.31 |
JAVA #10 : 남은 퇴근 시간 계산기, 시간 계산하기, SimpleDateFormat, currentTimeMillis (0) | 2022.05.30 |
JAVA #9 : Files와 split을 이용해서 텍스트 파일의 단어 개수 세기 (0) | 2022.05.27 |
JAVA #8 : 문자열 압축하기, toCharArray 사용하기 (0) | 2022.05.26 |