분류 전체보기
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
아스키코드 (ASCII) ● 7bit (2의 7승 : 128 가지 문자)● American Standard Code for Information Interchange● 컴퓨터의 기본 저장 단위는 바이트(byte)이고, 1byte는 8bit이다.● 1byte에는 2의 8승에 해당하는 256개의 고유한 값을 저장할 수 있다.● 아스키코드는 7비트로 128개의 고유한 값을 저장한다. (문자 하나당 숫자 하나를 매핑, ● 1비트는 별도의 목적을 위해서 사용)● 로마자 및 특수 기호(한글 포함 안됨)0~127에 각각 고유값을 저장유니코드 (UNICODE)● 2byte (2의 16승 : 65,536가지 문자)● 한글은 자음과 모음의 조합 개수만해도 128개를 넘는다.● 이와 같이 7bit ASCII 코드에 담을 수..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
시저 암호어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 AB는 1만큼 밀면 BC가 되고, 3만큼 밀면 DE가 됩니다. z는 1만큼 밀면 a가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요.제한 조건공백은 아무리 밀어도 공백입니다.s는 알파벳 소문자, 대문자, 공백으로만 이루어져 있습니다.s의 길이는 8000이하입니다.n은 1 이상, 25이하인 자연수입니다.입출력 예snresultAB1BCz1aa B z4e F d class Solution { public String solution(String s, int n) { int ascii[] = new int[s.leng..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
문자열을 정수로 바꾸기문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.제한 조건s의 길이는 1 이상 10,000이하입니다.s의 맨앞에는 부호(+, -)가 올 수 있습니다.s는 부호와 숫자로만 이루어져있습니다.s는 0으로 시작하지 않습니다.입출력 예예를들어 str이 1234이면 1234를 반환하고, -1234이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. class Solution { public int solution(String s) { return Integer.parseInt(s); } } 혹시나하고 이게 맞나 해서 채점을 돌려봤는데 맞았다..... 너무 간단해서 내가 틀린줄 알았다. 확실히 ..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
StringBuffer 와 StringBuilder 둘다 가변객체입니다.String은 불변 객체.차이점은 아래와 같습니다.● A thread-safe vs no guarantee of synchronizationStringBuffer는 멀티스레드 환경에서 StringBuffer 인스턴스에 접근해서 조작해도 그 값에 대한 접근이 가능하다는 얘기입니다. 반면, StringBuilder 는 그렇지 않다는 거죠.Instances of StringBuilder are not safe for use by multiple threads. If such synchronization is required then it is recommended that StringBuffer be used.위 문구를 보면 멀티스레드 환..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
불변객체와 가변객체 (String vs StringBuffer 와 StringBuilder)일단 String 과 StringBuffer 또는 StringBuilder 의 차이를 알려면불변객체 와 가변객체 의 개념부터 알아야 됩니다.불변객체객체 지향 프로그래밍에 있어서 불변객체(immutable object)는 생성 후 그 상태를 바꿀 수 없는 객체를 말한다가변객체가변(mutable) 객체로 생성 후에도 상태를 변경할 수 있다.용어가 어렵지 사실 쉽게 이해할 수 있다. 반대 개념이고 객체안에 저장된 값을 수정할 수 없거나 수정할 수 있거나.수정할 수 없다면 불변객체!수정할 수 있다면 가변객체!예를 들어, 불변객체 String 으로 문자를 수정해야 될 경우를 보시면 됩니다.banan (바나나) 라는 문자에 ..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
수박수박수박수박수박수?길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다.제한 조건n은 길이 10,000이하인 자연수입니다.입출력 예nreturn3수박수4수박수박 class Solution { public String solution(int n) { String a = "수"; String b = "박"; StringBuilder answer = new StringBuilder(); int sNum = n/2; int bNum = n - sNum; if (bNum>sNum) { sNum = sNum + 1; bNum = bNum - 1; } for (int i = 1..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
ArrayList와 Array간 변환Array와 ArrayList는 Java에서 매우 많이 사용되어지는 자료구조이다. 이름은 유사하지만, 자료 구조의 특성이 다르기 때문에 변환하는 작업이 직관적이지는 않다.1. Array를 ArrayList로 변환많은 개발자가 Arrays.asList(array) 메소드를 사용해 array를 ArrayList로 변환한다. 하지만, 이 메소드는 가변적인 사이즈를 지원하는 ArrayList와 다른 클래스를 반환한다. 그러므로 다른 방법이 필요하다.1.1 ArrayList 생성시 Arrays.asList() 메소드 사용가장 많이 선호되는 방법이다.List list = new ArrayList(Arrays.asList(array));예를 들어 Class의 instance를 저장..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
서울에서 김서방 찾기String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.제한 사항seoul은 길이 1 이상, 1000 이하인 배열입니다.seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.Kim은 반드시 seoul 안에 포함되어 있습니다.입출력 예seoulreturn[Jane, Kim]김서방은 1에 있다 class Solution { public String solution(String[] seoul) { List list = new ArrayList(Arrays.asList(seoul)); String ans..
![](https://tistory1.daumcdn.net/tistory/2882364/skin/images/no-image.jpg)
에러(error) vs 예외(exception) 프로그램을 돌렸을 때 오작동이나 비정상적으로 종료되는 원인을 오류나 에러라고 합니다. 이 에러는 '컴파일 에러'와 '런타임 에러'로 나눌 수 있는데, 글 자 그대로 컴파일 시 발생하는 에러와 실행 도중에 발생하는 에러를 뜻합니다. 일반적으로 컴파일러가 컴파일 에러를 통해 소스코드의 기본적인 검사를 마친다고 해서 실행 시에도 에러가 발생하는 것은 아닙니다. 실행 도중의 잠재적 오류까지 검사할 수 없기 때문에 컴파일이 잘 이루어졌어도, 실행 도중에 잘못된 결과를 얻거나 비정상 종료가 될 수 있는 것이죠. 자바에서는 실행 시 발생할 수 있는 오류를 '에러(error)'와 '예외(exception)' 두 가지로 구분합니다. 에러는 메모리 부족, 스택오버플로우와 같..