[java]Stack클래스
2022. 9. 28. 17:29
Developer/Java
스택이란 우리가 정보처리 자격증을 공부하며 배우셨던 분들이 아마 많을겁니다 사전적인 의미는 쌓는다 라는 의미입니다 상자나 빈컵에다가 물건을 차곡차곡 쌓는 연상을 해보시면 이해가 편할겁니다 그렇게 쌓고 꺼낼때는 위에 있는 물건부터 꺼내게 되는것이죠 이 방식을 가진 자료구조가 바로 Stack입니다 (Last In First Out) LIFO 많이 들어보셨죠 ㅎㅎ 그 자료구조를 가진 클래스를 사용 할 수 있습니다 일단 Stack 클래스는 java.util 패키지 안에 있습니다 ㅎㅎ 제네릭을 써서 선언을 하는편이구요 ㅎㅎ 자 살펴봅시다 Stack stackIsi = new Stack(); Stack stackIsS = new Stack(); stackIsi.push(1); stackIsi.push(2); sta..
[springboot]서버 재시작 없이 jsp 반영
2022. 9. 27. 17:23
Developer/Etc
메모 느낌으로 삽질 하다가 알게 된 사실이라 공유 하겠습니다 #springboot 2.0미만 버전 server.jsp-servlet.init-parameters.development=true #springboot 2.0이상 버전 server.servlet.jsp.init-parameters.development=true
[java]Arrays클래스
2022. 9. 27. 17:21
Developer/Java
자바 배열을 다루는 클래스입니다 자주 사용하는 메서드들을 열거 해볼게요 sort 기본적으로 오름차순으로 정렬 합니다 int arr[] = {1, 2, 3, 44, 11, 23}; Arrays.sort(arr); for(int i : arr) { System.out.print(i); } //1 2 3 11 23 44 내림차순은 어떻게 할까요 Arrays.sort(arr, Collections.reverseOrder()); reverseOrder를 인자로 넘겨주면 내림차순으로 받아옵니다 asList 리스트를 초기화 할때 자주 사용합니다 new ArrayList를 대신해서 사용도 합니다 String[] strs = {"hi", "hello", "nice"}; List list = Arrays.asList(st..
[java] Math 클래스
2022. 9. 26. 16:36
Developer/Java
수학적인 계산이 필요할 때 사용하는 메서드들을 정리해 봅시다 ceil 찾아보면 어려운 설명들이 많은데 그냥 올림이라고 생각하면 편하다 System.out.println(Math.ceil(1.2323));//2.0 floor 내림 함수라 생각하면 편하다 System.out.println(Math.floor(1.2323));//1.0 sqrt 제곱근을 구한다 일명 루트 라고 하죠 까먹으셨을까 봐 말씀드립니다 25의 제곱근은 5를 제곱 하면 25 겠죠 그럼 루트 5가 됩니다 System.out.println(Math.sqrt(25));//5 pow 이번엔 제곱근이 아니라 거듭 제곱을 구해봅시다 5의 2번 곱하면 25겠죠 ? 그 함수입니다 System.out.println(Math.pow(5, 2)); max,..
[java]Character클래스, Integer클래스
2022. 9. 20. 10:45
Developer/Java
문자와 숫자를 다루기에 유용한 기능을 알아보도록 합시다 getNumericValue char c = '1'; int i = Character.getNumericValue(c); System.out.println(i);//1 문자를 정수형으로 형변환 합니다 isDigit char c = '1'; int i = Character.getNumericValue(c); System.out.println(Character.isDigit(c));//true System.out.println(Character.isDigit(i));//false 문자형인지 아닌지 판별합니다 toString char c = '1'; c += "123123";//에러발생함 String t = Character.toString(c);//문자..
[java]자바 문자열 다루기2
2022. 9. 19. 16:29
Developer/Java
이번엔 + 연산으로 문자열을 연결시키지 않고 StringBuilder 클래스를 이용해서 문자열을 다뤄보겠습니다 append StringBuilder sb = new StringBuilder(); sb.append("첫번째 추가된 문자열"); System.out.println(sb.toString()); sb.append("두번째 추가된 문자열"); System.out.println(sb.toString()); 코드를 실행하면 출력 -->첫번째 추가된 문자열 출력 -->첫번째 추가된 문자열 두 번째 추가된 문자열 이처럼 출력됩니다 insert sb.append("원래문자열"); sb.insert(2,"낌"); System.out.println(sb.toString()); 문자열 인덱스에 매개변수로 보낸 문..
[java]자바 문자열 다루기
2022. 9. 15. 10:42
Developer/Java
자바를 사용함에 있어 기본적으로 알아야 하는 메서드를 열거하고 간략하게 설명 하도록 하겠습니다 먼저 문자열을 다루는 메서드입니다 String str="ABCDEFG"; str.charAt(int index); str.indexOf(String find); str.contains(String str); charAt 인덱스를 매개변수로 하면 해당 문자열의 인덱스에 해당하는 문자를 반환합니다 리턴 타입은 char입니다 System.out.println(str.charAt(1)); 위 코드를 실행하면 B가 출력됩니다 indexOf 문자열에 매개변수의 문자가 있는지 체크 합니다 있으면 0을 없으면 -1을 반환합니다 System.out.println(str.indexOf("A")); System.out.printl..
[java]필수 개념
2022. 9. 13. 15:29
Developer/Java
자바의 필수 개념을 정리해보는 시간을 가져봅시다 일단 자바의 특징부터 알아봅시다 객체지향 반대로 절차지향 언어는 c 언어가 대표적입니다 플랫폼에 독립적 자바 프로젝트를 만들고 윈도 맥 리눅스 어느 플랫폼에서도 동작합니다 메모리 관리에 유용합니다 자바는 가비지 컬렉터가 있기때문에 사용하지 않는 메모리는 알아서 비워주기 때문에 메모리 관리를 따로 하지 않아도 됩니다 (물론 하면 좋긴 합니다 ㅎㅎ ) 멀티 쓰레드 자바는 멀티 스레드가 가능합니다 반면 c는 싱글 스레드입니다 추상화 추상적인 클래스를 생성한다 인터페이스 추상 클래스보다 더 추상적이며 클래스 작성의 틀을 제공한다 다형성 한개의 객체가 여러 가지의 타입을 가질 수 있는 것 예를 들어 그리기 클래스를 선 클래스가 상속, 그리기 클래스를 점 클래스가 상..

[java]Object클래스
2022. 9. 8. 13:45
Developer/Java
오브젝트 클래스는 우리가 모르게 이미 상속을 받아 사용하고 있는 클래스이다 선언부를 보면 이미 딱히 extends로 키워드를 쓰지 않았는데도 말입니다 써도 되고 안써도 됩니다 ㅎㅎ 이미 우리는 상속을 받고있어요 그럼 왜 상속을 받아서 써야하나 궁굼합니다 그 이유는 바로 모든 클래스의 조상인 오브젝트 클래스가 갖고있는 클래스를 사용하기 위해서 입니다 공통적으로 상요할만한 기능들이 들어가있는것이죠 기능은 즉 메서드입니다 여러분이 자바 api 문서에서 Object 클래스를 보면 아마 clone, equals 이러한 메서드 들이 보일것입니다 이게 생성하지 않더라도 사용 할 수 있는 이유가 바로 오브젝트 클래스에 이미 다 정의 되어있기 때문입니다 이중에 가장 많이 쓰이는것은 아마 제 경험으로는 quals 와 to..
[java] hashmap 오름차순, 내림차순정렬
2022. 8. 29. 14:57
Developer/Java
Map failed = new HashMap(); HashMap을 정렬해야 할 일이 생겼습니다 value기준으로 오름차순 내림차순을 해야 하는데 이걸 for 문으로 반복해서 한다고 생각하니 좀 막막하더라구요?ㅎㅎ 코드도 워낙 길어질 것 같고요 그래서 좀 찾아보니 collection클래스를 이용해서 sort 해주는 기능이 있길래 바로 써봤습니다 ㅎㅎ 먼저 데이터에 들어가있는 값은 키가 Integer고 값이 Double인 데이터 {1=0.125, 2=0.42857142857142855, 3=0.5, 4=0.5, 6=1.0} 이러한 형태로 들어가 있습니다 이 value를 이용해 내림차순 하도록 하고자 합니다 ㅎㅎ 결론적으로 필요한건 key입니다 ㅎㅎ 그럼 내림차순 한다고 하면 {1=0.125, 2=0.4285..