본문 바로가기

전체 글

(83)
[안드로이드] ListView '리스트뷰' / ViewHolder '뷰홀더' ListView '리스트뷰' 데이터 목록(List)를 세로 방향의 리스트 형태로 나열하여 화면에 보여주는 ViewGroup 중 하나 ViewGroup는 스크롤 기본지원 ListView 사용법 ListView는 3가지의 구성요소로 존재 1) View - 화면에 보여줄 레이아웃 내에 View 객체 2) Item - 화면에 표시할 실질적인 item리스트 (데이터) 3) Adapter - Item리스트(데이터)를 View와 연결해서 뷰(View) 생성 및 관리하는 객체 Item -> Adapter, 아이템(리스트)와 Adapter를 연결하면 Adapter가 View를 생성 Adapter -> ListView, 어답터(Adapter)가 View를 생성해서 ListView에 배치 ListView 구현 1) 보여줄 ..
[안드로이드] Context란? 'ApplicationContext / ActivityContext' Context란? "현재 사용중인 Application / Activity의 포괄적인 정보를 지닌 객체" '포괄적인 정보' -> 'Resource' 리소스 참조 (이미지, 레이아웃, 문자열 등) -> 'Android 시스템 서비스' 사용 ApplicationContext? ActivityContext? Context는 ApplicationContext / ActivityContext 로 구분. Context의 수명에 따라 구분되어 사용 'ApplicationContext' -> Application (어플리케이션)의 Life_Cycle에 종속적인 객체 -> 어플리케이션 실행 - 종료까지의 객체 정보를 참조할 수 있음 getApplicationContext()- Application객체가 Context형으..
[백준 5622] 문자열 '다이얼' - 자바 (java) '다이얼' - 자바 (java) 5622번: 다이얼 문제 상근이의 할머니는 아래 그림과 같이 오래된 다이얼 전화기를 사용한다. 전화를 걸고 싶은 번호가 있다면, 숫자를 하나를 누른 다음에 금속 핀이 있는 곳 까지 시계방향으로 돌려야 한다. 숫자를 하나 누르면 다이얼이 처음 위치로 돌아가고, 다음 숫자를 누르려면 다이얼을 처음 위치에서 다시 돌려야 한다. 숫자 1을 걸려면 총 2초가 필요하다. 1보다 큰 수를 거는데 걸리는 시간은 이보다 더 걸리며, 한 칸 옆에 있는 숫자를 걸기 위해선 1초씩 더 걸린다. www.acmicpc.net 문제 상근이의 할머니는 아래 그림과 같이 오래된 다이얼 전화기를 사용한다. 전화를 걸고 싶은 번호가 있다면, 숫자를 하나를 누른 다음에 금속 핀이 있는 곳 까지 시계방향으로 ..
[백준 2908] 문자열 '상수' - 자바 (java) 상수 2908번: 상수 문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 www.acmicpc.net 문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠..
[백준 1152] 문자열 '단어의 개수' - 자바 (java) '단어의 개수' - 자바 (java) 1152번: 단어의 개수 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열의 앞과 뒤에는 공백이 있을 수도 있다. www.acmicpc.net 문제 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 풀이방법 풀이 방법 BufferedReader를 통해 readLine() 라인단위로 입력 값 읽어서 처리. -> 앞 뒤 공백이 존재 가능 'String.trim()' 메..
[백준 1157] 문자열 '단어 공부' - 자바 (java) '단어 공부' - 자바 (java) 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 풀이방법 풀이 방법 대문자로 출력의 문제이기에 편리를 위해 입력값도 모두 대문자로 변환 -> String.toUpperCase(); 모두 대문자로 변경, 소문자는 String.toLowerCase(); 알파벳 'A ~ Z'는 총 26개 -> int[] count = new int[26], 26크기..
[백준 2675] 문자열 '문자열 반복' - 자바 (java) 문자열 반복 2675번: 문자열 반복 문제 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다. QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: 이다. 입력 첫째 줄에 테스트 케이스의 개수 T(1 www.acmicpc.net 문제 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로..
[백준 10809] 문자열 '알파벳 찾기' - 자바 (java) 알파벳 찾기 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. www.acmicpc.net 문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 풀이방법 입력 값 -> 소문자로만 이루어짐 (소문자 "a ~ z" - ASCII "97 ~ 122") for문 반복범위를 소문자 범위 "97 ~ 122"로 설정..