본문 바로가기

Java9

[IntelliJ] 대소문자 구분 없이 자동 완성 IntelliJ에서 자동완성을 할 때 대소문자를 구분해가면서 사용하면 귀찮으므로 다음과 같이 설정해서 소문자로만 입력해도 자동완성이 잘 되도록 한다. 설정(⌘+,) > 에디터 > 일반 > 코드 완성 > 대/소문자 일치 체크 해제 Preferences(⌘+,) > Editor > General > Code Completion > Match case 체크 해제 2022. 9. 21.
[IntelliJ] 메뉴, 탭, 에디터 글꼴(font) 변경(폰트 설정) 시스템(메뉴, 탭) 글꼴 변경 설정(cmd(⌘) + ,) > 모양 및 동작 > 모양 > 사용자 지정 글꼴 사용 Preferences (cmd(⌘) + ,) > Appearance & Behavior > Appearance > Use custom font 에디터(Editor) 글꼴 변경 기본 테마 사용 시 설정(cmd(⌘) + ,) > 에디터 > 글꼴 Preferences (cmd(⌘) + ,) > Editor > Font Material Theme 사용 시 설정(cmd(⌘) + ,) > 에디터 > 색 구성표 > 색 구성표 글꼴 Preferences (cmd(⌘) + ,) > Editor > Color Scheme > Color Scheme Font 2022. 9. 21.
[JAVA] 삼항연산자(ternary operator) 자바에서 유일한 삼항연산자를 사용하면 if else문을 간결하게 사용할 수 있다. 조건식이 참(true)이면 : 의 왼쪽, 거짓(false)이면 : 의 오른쪽 값을 반환한다. 변수 = (조건식) ? true반환값 : false반환값 if else문을 삼항연산자로 표현한 것을 보면 이해가 쉽다. int num1 = 10; int num2 = 20; String result; if (num1 > num2) { result = "num1이 크네"; } else { result = "num2가 크네"; } int num1 = 10; int num2 = 20; String result = (num1 > num2) ? "num1이 크네" : "num2가 크네"; 삼항연산자는 if else문에 비해 성능이 뛰어나지는.. 2022. 9. 19.
[eclipse] 글꼴(Font) 및 크기 변경 Window > Prefrences > General > Apprearance > Color and Fonts 기본 글꼴 변경(editor) Basic > Text font > Edit... Console 창 글꼴 변경 Debug > Console font 메뉴 글꼴 변경 Basic > Dialog Font View and Editor Folders > Part title font View and Editor Folders > Tree and Table font for views (Package Explorer 글꼴) 2022. 9. 15.
[eclipse] JNI error has occurred 오류 해결 방법 1. Build Path 설정 프로젝트 우클릭 - Build Path - Configure Build Path Libraries - JRE System Library - Edit Alternate JRE → 사용하는 jdk 경로 설정 2. Java Compiler 설정 Project - Properties - Java Compiler - Enable project specific settings 체크 Compiler compliance level → 사용하는 jdk 버전 설정 3. 환경 변수 설정 JAVA_HOME : jdk 폴더 Path : jdk 폴더\\bin 2022. 9. 15.
[JAVA] 싱글톤 패턴(Singleton pattern) 프로그램에서 하나의 객체(인스턴스)만 만들도록 보장해야하는 경우 사용 new 연산자로 객체를 생성하지 못하도록 생성자를 private 으로 선언 static 으로 유일한 객체 생성 외부에서 유일한 객체를 참조할 수 있는 public static get() 메서드 작성 구현 public class *클래스* { // 정적 객체 private static *클래스* *객체* = new *클래스*(); // 생성자 private *클래스*() {...} // 정적 메서드 static *클래스* getInstance() { if(*객체* == null) { *객체* = new *클래스*(); } return *객체*; } } *클래스* obj = *클래스*.getInstance(); 예시) java.uitl.C.. 2022. 9. 15.
[JAVA] 배열 복사(array copy) 얕은 복사 = 연산자를 사용해 주소를 연결함 같은 주소를 공유하기 때문에 a를 수정하게 되면 b도 수정됨 int[] a = {1, 2, 3}; int[] b = a; System.arraycopy int[] arr1 = {10, 20, 30, 40, 50}; int[] arr2 = {1, 2, 3, 4, 5}; System.arraycopy(arr1, 0, arr2, 1, 3); for(int i=0; i 2022. 9. 15.
[JAVA] 형 변환(Casting) 자동 타입 변환(promotion) 값의 허용 범위가 작은 타입이 허용 범위가 큰 타입으로 저장될 때 발생 long lVal = 100000000L float fVal = lVal; // 1.0E8f double dVal = lVal; // 1.0E8 char cVal = 'A'; int iVal = cVal; // 65 정수 연산은 모두 int 타입으로 자동 타입 변환 후 계산 됨 정수 연산이 필요하면 int로 선언할 것 자동 타입 변환을 하지 않아 성능 향상 byte x = 10; byte y = 20; byte z = x + y; // 컴파일 에러(byte z = int 30) int z = x + y; // 30 byte z = 10 + 20; // 30 (int로 변환 x) 연산에서 피연산자끼리.. 2022. 9. 15.
[IntelliJ] 컴파일 시 args 세팅하는 방법 cmd 창의 경우 java 클래스명 args 와 같이 입력해주면 쉽게 args를 입력할 수 있지만 IDE에서는 자동으로 실행하기 때문에 뒤에 추가 인수를 줄 수 없다. 따라서 Run하기 전에 args를 추가하는 방법을 사용한다. alt + shift + f10키를 눌러 프로젝트를 선택한 후 오른쪽 방향키를 눌러 확장한 후 Edit..을 누룬다. Edit configuration settings 창이 뜨면 configuration 탭의 Program arguments에 원하는 args 들을 입력하고 아래쪽의 RUN을 눌러 실행한다. 2022. 9. 15.
반응형