이번 포스팅에서는 StringBuilder와 StringBuffer의 차이에 대해 알아보자. StringBuilder와 StringBuffer의 차이는 대표적인 면접 단골 질문이기 때문에 면접 준비를 해봤던 사람이라면 누구나 한번쯤 들어봤을거라 생각한다. StringBuffer, StringBuilder 클래스는 String 클래스와는 다르게 값이 변한다. 예를 들어 String aaa = ""; 선언을 하고 aaa 에 반복문을 이용해 aaa += 1 과 같이 값을 계속 넣어준다면 aaa 는 1,2,3,4,5. . . 값을 계속 해서 가지게 된다. aaa 가 4에서 5가 됐을때도 4라는 값을 계속 가지고 있기 때문에 메모리 낭비가 된다. 반복문을 이용해 적은양의 데이터를 String에 저장한다면 큰 문제..
자바에서 바탕화면이나 원하는 경로에 있는txt파일을 불러와 읽는 방법에대해 알아보자 먼저 간단하게 바탕화면에 테스트용 txt 파일을 만들자. 다음 아래와같이 소스를 작성한다. 어려운건 없으니 소스 해석은 생략하겠다. 이제 출력을 해보면 바탕화면에있는 txt 파일안의 내용을 불러와 콘솔창으로출력시켜준다. 하지만 바탕화면에 txt 파일을 불러와 DB에넣어야하는 상황이 올 수 있으므로한 단계 더 진행해보자.StringBuilder을 생성해준 후for문을 이용해 한 줄씩 읽어온txt 파일의 내용을 append를 이용해붙여준다. append로 붙은 내용을 출력하면 아래와 같이 한 줄로 쭉 붙여지게 된다. 파일을 줄바꿈을 적용해 출력하려면 append를 할때 \n을 붙여주자.
indexOf 를 이용해 문자열에서 부분 문자열을 검색하는 방법에 대해 알아보자.사용법은 굉장히 쉽고 간단하니한번만 보면 바로 알수있을것이다. indexOf를 사용해서 부분 문자열을 쉽게 검색할 수 있다. 해당 문자열을 검색했을때 값이 존재할 경우검색한 문자열의 시작 인덱스를 반환한다. 문자열이 없을 경우 -1을 반환한다. 위 테스트코드에서 aaa bbb ccc ddd 문자열에서bbb 를 검색하였다. 4번째 인덱스부터 bbb가 시작되어4라는 값을 반환하게 된다.
String, 객체 equals 비교 return 값
클래스는 보통 일반 클래스와 추상 클래스로 나뉜다.추상 클래스는 클래스 안에 추상 메소드가 하나 이상 포함되거나abstract로 정의된 경우이다. 인터페이스는 모든 메소드가추상 메소드인 경우이다. 추상 클래스와 인터페이스의 차이는명확하다. 구조, 사용법 등이 다르다. 하지만 하는 일은 비슷하다. "추상 클래스와 인터페이스는 상속받는 클래스 또는 구현하는 인터페이스 안에있는 추상 메소드를 구현하도록 강제한다." 라고 하는데 한번 읽어 본다면 "추상 메소드를 구현하는것" 이라고만생각될 수 있다. 그럼, 추상 클래스 하나만 존재를 해야하고추상 클래스 안에 추상 메소드를 여러개를 만들거나 전부 추상 메소드로만 두면될 것인데 왜 인터페이스가 존재하는 것일까? 이것은 인터페이스와 추상 클래스의 존재 목적이 다르기 ..
이번 포스팅에서는 자바스크립트와 제이쿼리의 실행 속도비교를 해보겠다. 간단하게 비교하는 방법이라 소스가 짧다.먼저 input태그를 하나 만들어주고자바스크립트와 제이쿼리에서 id가 text인 타겟에 속도테스트라는value값을 넣어줄 수 있도록 해주자. 다음 실행 속도비교를 위해 timer 라는 function을 하나 만들어주고performance.now()를 이용해 실행 속도를 체크하자. (performance.now()는 API문서를 참고했고 링크는 제일 밑에있다.) 아래는 만약을 위해 적어준다 실행을 하고 크롬 개발자도구의 콘솔창에서 확인을 하면 차기아 많이나야 약 3배 정도의 차이가 나는데단위가 ms 이니 거의 똑같다고 보면된다. 하지만 방금 테스트를 위해선 그냥 input태그에 5글자를 넣어준것이다..
보통의 개발자 분들이 개발을 할 때 가장 고민이 되는부분은"개발을 어떻게 할까?", "값을 어떻게 주고받을까?" 등의개발적인 고민을 포함해 "이 함수명과 변수명은 뭐로짓지?" 라고한다. 웹 개발을 할면서 함수명과 변수명은 자기만 알아보기쉽게만들면 안된다고 한다. 다른 사람들도 알아보기 쉽게 만들어야한다는데 보통은 영단어의 조합으로 만든다. 예를들어 DB에서의 컬럼명이든 자바에서 변수명이든 함수명이든게시판 글내용 이라는 변수명을 지을땐 content 라고 하기도 하지만보통은 boardcontent라고한다. 또는 자바에서 회원들의정보를 수정할수 있는 기능의 메소드가 있다고 한다면그 메소드명은 usermodify 또는 userinfomodify 라고이름을 지을수 있을것이다. 그런데 위처럼 2개 3개 이상의 영..
이번 포스팅에선 자바에서의 split()함수에대해알아보겠다. 먼저 이 함수는 문자열을 구분할 때 특정 구분자를 기준으로 문자를 나눠 배열에 담아준다.그리고 그 배열을 사용할수 있다. split함수에는 2개의 문법(?)이 존재한다. 종류는 아래와 같다.regex는 문자열을 구분하기 위한 정규 표현이다.limit은 문자열을 구분할때의 수 이다. 즉 분류할 수 있는단어가 5개인데 limit값으로 3을 줘버려서 3개만 구분하여 출력하고나머지는 통째로 출력한다. 먼저 첫 번째 split를 사용해보자. 간단하게 구현해봤다. 6line에서 str에 문자를 저장했는데 중간중간 띄어쓰기를 줬다.그리고 7line에서 split 함수안 큰따옴표 안에도띄어쓰기 한 칸을 줬다.그리고 출력을위해 9line에서 words의 길이만..