본문 바로가기

자바 Arrays 메소드 자바 Arrays의 메소드 배열을 다룰 때 알아두면 편리한 Arrays의 메소드를 몇가지 소개한다. 포스팅에 쓰일 문자형 배열 a와 정수형 배열 b를 선언하겠다. String[] a = {"a","b","c","d"};int[] b = {1,5,5,7,3,3,42,6,8,45323,4,63,2,1}; .asList(T..a) :배열을 ArrayList로 변환해준다. 배열은 크기가 정해져있고 값의 삭제 등이 자유롭지 않아 불편한 점이 많다.asList를 사용하여 리스트로 변환한 후 체인메소드(chain method) 방식으로 ArrayList의 메소드를 더하여 활용하면 여러모로 편리한 점이 많다. Arrays.asList(a); .toString() :배열에도 toString이 존재한다. toString이..
자바 Integer 클래스의 메소드 Integer 클래스의 메소드Integer 클래스는 Java.lang에 속하는 클래스로, 원시적 형(primitive type) int의 값을 객체에 wrap 한다 . Integer 유형의 오브젝트에는 유형이 int 인 단일 필드가 들어 있다.자주 쓰이는 메소드를 소개한다.Integer.parseInt(String s) :String to int. 문자열을 int형으로 변환한다. 어쩌면 Integer에서 가장 많이 쓰이는 메소드12String str = "123";int num = Integer.parseInt(str);cs.toString(int i):int to String. 반대로 int를 String으로 변환한다.12int num1 = 123;String str1 = Integer.toString..
자바 String 클래스의 메소드 String 클래스의 메소드 String은 원시타입(primitive type) 처럼 쓰이지만 참조형 클래스객체다. 그리고 불변immutable 객체다. 이 말이 무슨 말인가 하면 자바에서는 String 문자열끼리의 + 연산으로 문자열을 합칠 수 있고 내가 선언한 변수 안에서 연산이 이루어지는 것 같지만, 사실은 String a = "aaa";String 타입 변수 a= "aaa"에 +연산으로 String a += "bbb";+"bbb"가 이루어졌다면, 이미 존재하는 a에 bbb가 붙어 a = aaabbb가 되는 것이 아니라 새롭게 객체를 생성하는 구조를 가지고 있다. String 타입을 비교할때 == 연산자를 쓰지 않고 .equals()를 쓰는 이유가 그것이다. equals(): 다음과 같은 문자열들을..
자바 String을 Char로, Char를 String으로 변환하기 Char (Character)를 String 으로, String을 Char로 변환하기문제를 해결해나가다 보면 String을 Char로 변환해 아스키코드 등으로 연산을 마친 후 다시 String타입으로 리턴하고 싶을 때가 많다. 여러 방법을 소개한다. 1. char형 array를 하나씩 꺼내 Character.toString으로 변환12345678String temp = "캐릭터 변환하기";char[] array = temp.toCharArray();String change = ""; for (int j = 0; j >캐릭터 변환하기 String의 toCharArray()를 이용해 char[] 배열로 작업한 뒤 반복문을 이용해 하나씩 다시 String에 넣어주는 과정이다. 이보다 더 간편한 방법이 있다.2..
R을 이용한 텍스트마이닝 & 워드클라우드 R을 이용한 한글 텍스트마이닝 & 워드클라우드Preview비정형 텍스트를 기반으로 의미있는 정보를 추출하는 기술을 텍스트마이닝이라고 합니다. 데이터마이닝과는 다른 것으로, 데이터마이닝은 구조화되고 사실적인 방대한 데이터베이스에서 관심 있는 패턴을 찾아내는 기술 분야라고 한다면 텍스트마이닝은 구조화되지 않고 자연어로 이루어진 텍스트에서 의미를 찾아내는 기술 분야입니다.우리는 비정형 텍스트에서 텍스트마이닝을 통해 원하는 텍스트를 걸러내, R을 통한 시각화를 해 볼 겁니다. 워드클라우드는 아래의 사진과 같이 문서의 단어들을 분류하여 그 빈도를 한눈에 보기 쉽게 하는 겁니다. (이런거) 포스팅에는 영화 박열의 네이버 리뷰를 크롤링해 .txt 파일로 저장한 것을 사용할 겁니다. 아래 첨부파일을 다운받으세요.1. ..
자바(java) 시저암호 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다.A를 3만큼 밀면 D가 되고 z를 1만큼 밀면 a가 됩니다. 공백은 수정하지 않습니다.보낼 문자열 s와 얼마나 밀지 알려주는 n을 입력받아 암호문을 만드는 caesar 함수를 완성해 보세요.“a B z”,4를 입력받았다면 “e F d”를 리턴합니다. ​String형 변수 s를 char로 변환한 후, 아스키코드를 n만큼 밀면 되는 간단한 문제가 아닌가? 라고 생각했다. 처음 작성한 코드에서는 a B z, 4가 정상적으로 e F d로 변환되었지만 테스트용으로 나오는 "AsadFw WNezin dIwEndZ IoenNoje nVQa" 같은 형식에서는 작동하지 않았다.시저암호라는 개념을 모르고 있었고 모든..
자바(Java) 거스름돈 계산 거스름돈을 몇 개의 동전으로 지불할 수 있는지를 계산하는 문제이다. 변수 money의 금액을 동전으로 바꾸었을 때 각각 몇 개의 동전이 필요한지 계산해서 출력하라. 단, 가능한 한 적은 수의 동전으로 거슬러 주어야 한다. 사실 나눗셈과 나머지 연산자를 이용하면 단순 수학만으로도 풀 수 있는 문제다.2750원이 들어온다고 하면 2750원을 500원으로 나눈 값이 곧 500원이 개수가 되고, 나머지를 다시 100원으로 나눈 몫이 100원의 개수가 되는 형식이다. 기본서에 자주 등장하는 자판기 프로그램에 등장하는 형식으로 바꾼다면 이렇게 될 것이다.public static void main(String[] args) { GetChange getChange = new GetChange(); getChange.g..
for each로 다중배열 꺼내기 1차원 배열단순 1차원 배열은 for each를 사용할 때 아래와 같은 방식으로 빼내곤 한다.int[] arr = {1,2,3,4,5}; for (int e : arr) { System.out.println(e)}cs2차원 배열다음과 같은 2차원 배열을 보자.length가 각각인 4개의 int 배열이 4개 담겨 있다.int[][] arr = { {5, 5, 5}, {10,10,10,10,10}, {20,20,20,20}, {30,30,30,30,30,30}};cs 먼저 1차원 배열과 똑같이 arr 배열의 아이템을 하나씩 꺼낸다. {5,5,5} , {10,10,10,10,10} ... 이 통째로 차례차례 e에 담긴다.거기에 for each문을 한번 더 사용하여 각각의 e를 f로 하나씩 빼낸다.for(int..