컴퓨터/Java
-
Conditionals and Control Flow컴퓨터/Java 2019. 11. 21. 10:18
- If a conditional is brief we can omit the curly braces entirely; if (true) System.out.println("Brevity is the soul of wit"); - switch statement String course = "History"; switch (course) { case "Algebra" : break; case "Biology": break; default: System.out.println("Course not found"); } 출처 : codecademy
-
toString()컴퓨터/Java 2019. 11. 21. 09:44
- When we print out Objects, we often see a String that is not very helpful in determining what the Object represents. 주소를 보여준다든지... - We can return a String that will print when we print the object. public String toString() { } - import java.util.Arrays; array를 print하면 memory address가 나온다. therefore we need a toString() method that is provided by the Arrays package in Java. Arrays.toString(arra..
-
[Java 기본 02] Java file, java 프로그래밍 특징 및 작성법컴퓨터/Java 2019. 11. 20. 10:52
-> 들여쓰기 제대로 하기! -> 들여쓰기 제대로 안돼 있을 때 메뉴바의 source -> correct indentaion (ctrl+i) 누르면 자동으로 들여쓰기 해준다 * java : method, 클래스 java에서는 함수라는 말을 쓰지 않고 method라는 말을 쓴다. c언어에서의 함수, function과 대응한다. c언어는 함수들의 집합일 뿐이고 함수들을 둘러싼 단위가 없다. 반면, 자바에는 class(method들의 집합)가 있다. 자바 프로그래밍은 class들의 집합이다. class 안에 method들이 있다. * Each file has one primary class named after the file. public class HelloWorld { } 클래스 이름이 대문자로 시작해야..
-
제네릭컴퓨터/Java 2019. 10. 6. 21:01
- 제네릭 : 클래스 내부에서 사용할 데이터 타입을 외부에서 지정하는 기법 class Person { public T info; } Person p1 = new Person (); Person p2 = new Person (); >> 클래스를 선언할 때는 데이터 타입을 지정하지 않는다. 객체를 생성할 때 데이터 타입을 지정한다. - 대다수의 제네릭 타입은 타입 매개변수에 아무런 제약을 두지 않는다 ex. Stack, Stack, Stack, Stack 등 어떤 참조 타입으로도 Stack을 만들 수 있다 단, 기본 타입은 사용할 수 없다. int, double과 같은 기본 타입 사용시 컴파일 오류 발생 - 필요성 : type safety와 코드 중복 방지 1) type safety란? java에서는 변수의..
-
형변환컴퓨터/Java 2019. 10. 6. 20:47
- 형변환 하는 법 EmployeeInfo ei = (EmployeeInfo) p1.info >> p1.info가 다른 type일 때 EmployeeInfo로 형변환 해주기 >> EmployeeInfo type으로 선언된 ei 변수에 담아준다. - 배열이 반환한 요소 형변환하기 ex. E result = elements[num] >> elements는 object 타입 원소를 갖는다. 위와 같은 경우 오류 대신 경고가 뜬다 - Object 배열을 생성한 후 제네릭 배열로 형변환(제네릭 배열 생성 금지 우회) elements = (E[]) new Object[num] E가 object가 아닌 한 배열의 런타임 타입이 컴파일타임 타입과 다르다 - 컴파일러에 의해 형 변환이 자동으로 되기도 한다 명시적 형변환..
-
Java.util.Arrays 클래스컴퓨터/Java 2019. 10. 6. 20:26
- Arrays 클래스의 모든 메소드는 static method(클래스 메소드)이므로 객체를 생성하지 않고도 바로 사용할 수 있다. import 문으로 java.util 패키지를 불러오고 나서 사용해야 한다. - copyOf(원본 배열, 복사할 요소의 개수) 메소드 전달받은 배열의 특정 길이만큼을 새로운 배열로 복사하여 반환한다. 새로운 배열의 길이가 원본 배열보다 길면 나머지 요소는 배열 요소의 타입에 맞게 기본값으로 채워진다. ex. int[] arr1 = [1,2,3,4,5] int[] arr2 = Arrays.copyOf(arr1, 3) 출처 : http://tcpschool.com/java/java_api_arrays
-
Optional컴퓨터/Java 2019. 10. 6. 20:00
- Optional 클래스 Integer나 Double 클래스처럼 T타입의 객체를 포장해 주는 래퍼 클래스 모든 타입의 참조 변수를 저장할 수 있다 - 객체 생성 Optional opt = Optional.ofNullable("자바 Optional 객체"); 참조 변수의 값이 null이 될 가능성이 있다면 ofNullable()메소드를 사용하여 Optional 객체를 생성한다 명시된 값이 null이 아니면 명시된 값을 가지는 Optional 객체를 반환한다. - 객체 접근 객체.get() 저장된 값이 null이면, NoSuchElementException예외가 발생한다. 따라서 객체.isPresent()메서드를 사용하여 Optional 객체에 저장된 값이 null인지 아닌지를 먼저 확인한 후 호출하는 것..