자바) generics/ enum/ annotation (23-05-15)
velog에서 이전한 글 입니다. Generics 와일드 카드 ArrayList
2023.07.13
자바) regex/ generics (23-05-11)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록입니다! TIL: Today I Learned 정규표현식(regex) public class Main { public static void main(String[] args) { String t = "^[0-9]*$"; String res = "1597asd123".replaceAll(t, "yes"); System.out.println(res); String res2 = "".replaceAll(t, "yes"); System.out.println(res2); String res3 = "1235512".replaceAll(t, "yes"); System.out.println(res3); } } 결과 1597as..
2023.07.13
자바) Map반복/ List ImmutableCollections (23-05-10)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록입니다! TIL: Today I Learned pwd public class Main { public static void main(String[] args) { String currentPath = Paths.get("").toAbsolutePath().toString(); String currentPath2 = new File("").getAbsolutePath(); System.out.println(System.getProperty("user.dir")); System.out.println(currentPath); System.out.println(currentPath2); } } 결과 ...\IdeaPro..
2023.07.13
자바) List/ Stack/ Arrays Comparator/ Comparable Iterator (23-05-09)
velog에서 이전한 글 입니다. List ArrayList(Vector) 요소를 삭제할 경우 삭제할 객체의 바로 아래에 있는 데이터를 한 칸씩 위로 복사해서 삭제할 객체를 덮어씐다. 마지막 데이터는 null로 변경한다. 그래서 맨 위의 데이터를 수정/삭제하는데 느리다. 추가도 이후 요소들을 모두 한칸 씩 이동시킨다. 크기를 변경할 수 없다. 내부적으로 새로운 배열을 생성해서 데이터를 복사한다. LinkedList 배열은 모든 데이터가 연속적으로 존재하지만 링크드 리스트는 불연속적으로 존재하는 데이터를 서로 연결한 형태이다. 요소를 삭제할 경우 삭제하고자하는 요소의 이전요소가 삭제하고자 하는 요소의 다음 요소를 참조하도록 변경하기만 하면 된다. 추가도 참조만 변경해주면 된다. 읽기가 느리다. n번째 값을..
2023.07.13
자바) lang/ Object/ StringBuffer/ equals (23-05-08)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록이다. TIL: Today I Learned java.lang package Object Object class는 모든 클래스의 최고 조상이다. 기본적으로 Object.equals() 는 인스턴스의 주소값으로 비교한다. Strings.equals() 같은 경우는 String class에서 오버라이딩해서 사용하는 것으로 주소값이 아닌 인스턴스의 멤버변수를 비교한다. 비교연산자(==)는 주소값을 비교한다. public class Main { public static void main(String[] args) { String a = new String("hello"); String b = new String("hel..
2023.07.13
자바) static import/ 예외처리 (23-05-05)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록이다. TIL: Today I Learned static import import static java.lang.System.out; import static java.lang.Math.*; out.println(random()); import는 패키지명을 생략하고 import static은 static 멤버를 호출할 때 클래스명을 생략한다. 예외처리 public class Main { public static void main(String[] args) { int input = 0; while (true) { try { System.out.println("1~100사이 값을 입력하세요"); input = new..
2023.07.13
자바) 변수 초기화/ 제어자/ 다형성/ 인터페이스/ 익명클래스 (23-05-04)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록이다. TIL: Today I Learned 멤버 변수 초기화 class InitTest{ int x; int y = x; // 멤버변수는 초기화 하지않아도 기본값으로 초기화 private void method1(){ int i; int j = i; //지역변수는 사용전 초기화 안하면 에러 } } 기본값 boolean : false char : '\u0000' 참조형 : null 변수 초기화 클래스 변수(cv) 초기화 -> 인스턴스 변수(iv) 초기화 자동 초기화 -> 명시적 초기화 -> 초기화 블럭, 생성자 class Main{ static { System.out.println("클래스 초기화 블럭"); } {..
2023.07.13
자바) Wrapper/ 표현식/ 이름붙은 반복문 (23-05-04)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록이다. TIL: Today I Learned type check Wrapper class type public static void main(String[] args) { String t1 = "TEST"; System.out.println(t1.getClass().getName()); //java.lang.String Integer t2 = 7777; System.out.println(t2.getClass().getName()); //java.lang.Integer List t3 = new ArrayList(); System.out.println(t3.getClass().getName()); // java.ut..
2023.07.13
no image
자바) JDK/ JVM/ Runtime Data Areas (23-05-02)
velog에서 이전한 글 입니다. 23.5.2 ~ 23.5.19 사전 캠프 기간의 TIL 기록이다. TIL: Today I Learned JDK구성 JDK : java를 포함한 develope kit JRE : java runtime environment 동작 흐름 Java는 javac에 의해 바이트코드로 컴파일 되지만 JVM에서는 인터프리터로 실행된다. 그러므로 Compile 언어이지만, Interpreter 언어의 특징을 동시에 가진다. JVM Runtime Data Areas 변수 상수 : final 리터럴 : 그 자체로 값을 의미하는 것 문자 : char, '' 문자열 : String, "" 아스키코드 128개의 문자조합을 제공하는 7비트 부호 유니코드 16비트로 표현 - 최대 65,536 자 표..
2023.07.13