전체 글 보기
[Java] Set
Set : 중복이 불가능하고 순서가 없는 자료구조 - HashSet, TreeSet import java.util.HashSet; import java.util.Iterator; import java.util.Set; public class setExam { public static void main(String[] args) { Set set1 = new HashSet(); // HashSet 객체 생성 boolean flag1 = set1.add("kim"); // set1에 데이터 저장, 반환값 저장 boolean flag2 = set1.add("lee"); boolean flag3 = set1.add("kim"); // 중복이면 false 반환 System.out.println(set1.size(..
[Java] 제네릭
// Box.java public class Box { private Object obj; public void setObj (Object obj){ this.obj = obj; } public Object getObj (){ return obj; } } // BoxExam.java public class BoxExam { public static void main(String[] args) { Box box = new Box(); box.setObj(new Object()); Object obj = box.getObj(); System.out.println(obj); box.setObj("Hello"); String str = (String)box.getObj(); System.out.println(s..
[Java] java.util 패키지, 컬렉션 프레임워크
java.util 패키지의 클래스 - 날짜와 관련된 클래스 Date, Calendar 클래스 ( Date 클래스는 지역화를 지원하지 않는다 ) - 자료구조와 관련된 컬렉션 프레임워크와 관련된 인터페이스와 클래스 ( List, Set, Collection, Map ) ( 자료구조: 자료를 저장할 수 있는 구조, 자료구조 클래스: 컬렉션 프레임워크 ) 컬렉션 프레임워크 Collection 가장 기본이 되는 인터페이스 중복 허용, 순서 X add(Object) : boolean , size() : int , iterator() : iterator iterator 라는 인터페이스에 의존 ( iterator는 메소드 hasNext() : boolean , next() : Object 를 가지고 있다 ) Set C..
[Java] Math 클래스
Math 클래스 - 생성자가 private으로 되어 있어 new 연산자 이용 불가 - 모든 메소드와 속성이 static으로 정의되어 있어 객체를 생성하지 않고 사용 가능 System.out.println(Math.max(5, 30)); // 최댓값 System.out.println(Math.min(5, 30)); // 최솟값 System.out.println(Math.abs(-10)); // 절댓값 System.out.println(Math.random()); // 0.0 이상 , 1.0 미만 System.out.println(); System.out.println(Math.sqrt(25)); // 제곱근 System.out.println(Math.pow(2, 10)); // 제곱 ( 2의 10승 ) S..
[Java] String 클래스 주의점
문자열 더하기 String str1 = "Hello World!"; String str2 = str1.substring(5); # str1을 5번째 인덱스부터 자른다 System.out.println(str1); System.out.println(str2); String str3 = str1 + str2; System.out.println(str3); String str4 = new StringBuffer().append(str1).append(str2).toString(); // str1 + str2 를 하게 되면 내부적으로 이와 같은 절차를 수행한다 System.out.println(str4); 출력값 Hello World! World! Hello World! World! Hello World! Wo..
[Java] 스트링버퍼, 메소드 체이닝
스트링 버퍼 StringBuffer sb = new StringBuffer(); // StringBuffer 객체 생성 sb.append("Hello"); // StringBuffer에 값 추가 sb.append(" "); sb.append("World!"); System.out.println(sb.toString()); 출력값 Hello World! 스트링 버퍼 반환값 StringBuffer sb2 = new StringBuffer(); StringBuffer sb3 = sb2.append("Hello"); if (sb2 == sb3) System.out.println("sb2 == sb3"); 출력값 sb2 == sb3 스트링버퍼가 가지고 있는 메소드들은 대부분 자기 자신(this)를 반환 메소드 체..
[Java] java.lang 패키지, Wrapper, 오토박싱
java.lang 패키지의 클래스 ( import 하지 않고 사용 가능 ) - Wapper, Object, String, StringBuffer, StringBuilder, System, Math, Thread, ··· Wrapper 클래스 - Boolean, Byte, Short, Integer, Long, Float, Double 오토박싱 - 기본형 타입의 데이터를 객체 타입의 데이터로 자동 형변환 시켜주는 기능 오토언박싱 - 객체 타입의 데이터를 기본형 타입의 데이터로 자동 형변환 시켜주는 기능 ( 오토박싱과 오토언박싱은 Java 5 부터 사용 가능 ) public class WrapperExam{ public static void main(String[] args){ int i1 = 5; // I..
[Python] 백준(BOJ) 2447번 별 찍기 - 10 (재귀)
2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 문제 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. *** * * *** N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)×(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어 크기 27의 패턴은 예제..