728x90

언어/JAVA 9

자바 문자열 분리, 구분: split, StringTokenizer 차이

1. split() ㆍStirng 클래스 메소드 ㆍ지정한 구분자로 문자열을 나눠 배열에 저장 ㆍ구분자로 여러개 사용시 |(파이프) 사용 ㆍ구분자에 정규식도 많이 사용한다. ㆍ예) 공백을 구분자로 문자열을 나눠 배열 arr에 저장 package stringTokenizerTest; public class SplitTest { public static void main(String[] args) { String text = "Happy day"; String arr [] = text.split(" "); //foreach문으로 arr배열 출력 for(String showArr : arr) { System.out.println(showArr); } System.out.println(); String text2..

언어/JAVA 2022.06.09

BufferedReader/ BufferedWriter/ StringBuilder 차이

String 연산 사용시 효율적 메모리 사용과 연산 성능 향상을 위해 Scanner 보다 BufferedReader/ BufferedWriter/ StringBuilder를 사용할 것을 권장한다. BufferedReader/ BufferedWriter/ StringBuilder 를 설명하기에 앞서 알아야할 개념이 hashCode()메소드와 String이 불변 객체라는 것이다. 1. hashCode() ㆍhashCode() 메소드를 호출하면 hashcode가 리턴 ㆍHashcode는 객체를 식별하는 Integer 값 (String값을 int로 리턴) ㆍJava에서 hashCode()는 Object 클래스에 구현되어있음 2. String은 불변객체 ㆍ아래 예시를 보면, 동일 변수 text1이지만, hashC..

언어/JAVA 2022.06.09

for each문

for each 문을 쓰면 for 문을 쓸 때 보다 코드가 훨씬 간단해진다. for(타입 값받아줄 변수명 : 출력하고 싶은 자료구조(=배열)) for each문의 장점은 바로, 인덱스를 표기할 필요가없다는 것이다. for each문이 알아서 해당 배열의 처음부터 끝까지 모든 인덱스 값을 다 출력해준다. for each문이라고 부르지만, 표기할 때는 for 만 작성한다. for문으로 출력 시 예제 foreach로 출력 시 예제 int[] arr = {10,11,12,13,14}; for(int i = 0; i < arr.length; i++) { int value = arr[i]; //arr[0]~[4] System.out.println(value); } int[] arr = {10,11,12,13,14}..

언어/JAVA 2022.04.20

Eclipse 이클립스 폰트 변경

Eclipse D2 Coding D2 Coding 폰트는 네이버에서 개발자의 코딩을 위해 만든 글꼴이다. 네이버 나눔바른고딕을 바탕으로 개발됐고, 가독성이 굉장히 좋다. 또한, 한글에 최적화된 글꼴이다. 이클립스 기본 폰트 쓰다가 D2 Coding을 적용하면 개안한 것 같다. 기본폰트로 한글 출력하면 한글이 쭈글쭈글하게 나오는데, D2 Coding으로 글꼴을 설정하면 한글도, 영어도, 숫자도, 기호도 아주 예쁘게 나온다. 이클립스 폰트변경, D2 Coding적용방법 1. Naver github 에서 zip파일 다운로드 Naver github 공식홈페이지 : https://github.com/naver/d2codingfont 2. zip파일 압축해제 후 폰트파일 더블 클릭해서 설치 마우스로 파일 블록 잡고..

언어/JAVA 2022.04.14

가위바위보(Rock-Paper-Scissors Game)

문제조건 1. 0은 주먹, 1은 보, 2는 가위 2. 컴퓨터는 무작위로 숫자를 선택하고, 사용자에게는 숫자를 입력받는다. 3. 가위바위보게임은 무한 반복한다. 알고리즘 1. Math.random함수로 컴퓨터가 낼 패를 랜덤으로 정한다. 2. 사용자의 패는 0,1,2로 지정한다. 3. while문으로 가위바위보를 무한 반복한다. 4. 사용자의 선택에 따라 게임을 종료할 수 있게 추가했다. 5. 사용자가 잘못된 숫자를 입력할 경우에는 경고문구를 출력하고 숫자를 다시 입력을 받는다. public class iam_im2 { public static void main(String[] args) { RockPaperScissor(); } public static void RockPaperScissor() { Sc..

언어/JAVA 2022.04.07

숫자를 입력 받는 Timer

문제조건 1. 현재 시간을 출력 2. 추가할 초를 입력받는다. 3. 2번 단계에 소요된 시간이 2번에서 추가하겠다고 입력한 초보다 길면, 바로 Time is over 출력 4. 2번 단계에 소요된 시간이 2번에서 추가하겠다고 입력한 초보다 짧으면(=숫자를 빨리입력후 엔터눌렀으면) 입력된 숫자만큼 초가 경과한 후에 Time is over 출력 ※그냥 시간을 멈추면 되는게 아니라서 되게 까다로운 타이머다.. 알고리즘 초를 어떻게 계산해야하나 엄청 고민했다. 원하는 형태로 출력되지않아서 이틀동안 고민해서 풀었다. 덕분에 currentTimeMillis() 함수를 열심히 다뤘다. public class iam_im2 { public static void main(String[] args) { calTime();..

언어/JAVA 2022.04.07

currentTimeMillis() 함수: 소요시간 계산

currentTimeMillis() 함수 currentTimeMillis() 함수는 1970년 1월 1일 0시를 기준으로 현재까지 경과한 시간을 1000분의 1초(밀리초)로 반환한다. 예를 들어, long start = System.currentTimeMillis(); 라고 가정하자. 1000분의 1초를 반환하기 때문에, 1970년 1월 1일 0시로부터 1000초가 지나면 long start = System.currentTimeMillis(); 의 출력결과는 1이다. 즉, long start = System.currentTimeMillis(); 값을 1000.0으로 나누면 1970/1/1 로부터 현재까지 경과한 시간을 1초 단위로 받는다. 경과한 시간을 분 단위로 받으려면, 1분이 60초니까(1000*6..

언어/JAVA 2022.04.07

Arrays.sort 로 배열 정렬하기

Arrays.sort Arrays.sort method를 이용하면 손쉽게 데이터를 정렬할 수 있다. 기본 정렬 순서는 오름차순(a to z)이다. import java.util.Arrays; import java.util.Collections; public class ArraysSort { public static void main(String[] args) { String[] text = {"alpha","charlie","bravo","beta","echo"}; Arrays.sort(text); for (int i = 0; i < text.length; i++) { System.out.println(text[i]); } System.out.println("---------------------"); ..

언어/JAVA 2022.04.06

ArrayList remove 특정 값 삭제

ArrayList 특정 값 삭제 .remove(Integer.valueOf()) 인덱스가 아닌, ArrayList에 있는 특정 값 삭제 import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ArrayList { public static void main(String[] args) { List list = new ArrayList(Arrays.asList(5, 4, 3, 2, 1, 0)); // value가 1인 element 삭제 list.remove(Integer.valueOf(5)); System.out.println(list); // [4, 3, 2, 1, 0] } } 위 코드를 보면 리스트명...

언어/JAVA 2022.04.06
728x90