본문 바로가기

분류 전체보기

(518)
stack//스택// 원리 코드 ArrayStrack 클래스 생성 1. 사이즈 입력받아 배열로 생성 2. 공간이 비어있나? -> return boolean 3. 공간이 꽉차있나? -> return boolean 4. 입력 (매개변수 : 입력받을item) 4-1. 공간이 가득찼나? 4-2. 빈공간? -> top++; stackArray[top]에 입력 5. 삭제 item = peek()// 최근에 추가된(Top) 데이터 조회, top--; return item; 6. 조회 6-1. 비어있나 ? isEmpty , return null; 6-2. return stackArray[top] public Element push(Element item); // 데이터 추가 public Element pop(); // 최근에 추가된(Top) 데이터 ..
Map//Baseball 야구멤버 public class MemberDao { Scanner sc = new Scanner(System.in); // 배열 // private Pitcher pitcher[]; // private Batter batter[]; // private Human human[] = new Human[20]; // 변수 20개 생성 // private ArrayList list = new ArrayList(); private Map map = new HashMap(); private int memberNumber; // private int memberCount; FileProc fp; public MemberDao() { fp = new FileProc("baseball"); fp.createFile(); // ..
함수//클래스에서 오버라이딩하여 변수 값 비교하기 (*헷깔림) 문제 : 다음과 같은 실행결과를 얻도록 Point3D클래스의 equals()를 멤버변수인 x, y, z 의 값을 비교하도록 오버라이딩하고, toString()은 실행결과를 참고해서 적절히 오버라이딩하시오. 실행결과 [1,2,3] [1,2,3] p1==p2?false p1.equals(p2)?true Point3D public class Point3D { int x,y,z; public Point3D(int x, int y, int z) { this.x=x; this.y=y; this.z=z; } public Point3D() { this(0,0,0); } public boolean equals(Object obj) { /* (1) 인스턴스변수 x, y, z를 비교하도록 오버라이딩하시오. */ Point3..
함수//상속//도형면적 반환 Circle도형 클래스와 Rectangle도형 클래스에 double calcArea()메서드를 오버라이드 생성해준다. 기본생성자에 지역변수를 만들고 오버라이드에 공식을 리턴값으로 지정해준다. (메인에서 오버라이드 호출하면 원, 사각형 상관없이 바로 계산될 수 있게) ( 부모클래스 Shape에 초기값을 설정하는 Point를 호출 ) Circle public class Circle extends Shape { double r; public Circle() { } public Circle(double r) { super(); this.r = r; } //무조건. @Override double calcArea() { return (r * r * Math.PI);//반지름 값으로 수정 } } Rectangle p..
HashMap 코드 "사과" : "apple" key : value -> 1pair == web json key:value Tree 구조 key 는 중복되지 않는다 List : 선형 구조 o-o-o-o-o-o-o TreeMap = HashMap + Sorting(key) 선언 HashMap hMap = new HashMap(); 추가 // 추가 key value hMap.put(111, "백십일"); hMap.put(222, "이백이십이"); hMap.put(333, "삼백삼십삼"); value확인 // value 취득 String value = hMap.get(222); System.out.println("value:" + value); or if(hMap.containsKey(333)) { value = hMap.get..
ArrayList 와 LinkedList ArrayList : 검색, 대입 == Vector LinkedList : 실시간 추가, 삭제의 처리가 빠르다 ArrayList에서 LindedList로 바꿔 사용하는것이 포인트 ArrayList alist = new ArrayList(); // list의 내용내용내용~ LinkedList blist = new LinkedList( alist ); //맨 앞의 element를 추가 blist.addFirst("giants"); //맨 뒤에 element를 추가 blist.addLast("bears"); main public class mainClass { public static void main(String[] args) { ArrayList alist = new ArrayList(); alist.ad..
interface//인터페이스 NameCard 방법1 interface 인 PrintNameCard 클래스를 만들어 나머지 카드1,2에 상속 후 오버라이딩 해줌 메인에서 NameCard 객체 ncard 생성 후 "이름","전화번호","이메일" 을 넣어준 후 ncard . setPrintNameCard (new PrintNameCard2()); 로 대입해준 후 print()로 호출하면 값이 나옴. NameCard에 인터페이스 PrintNameCard PrintNameCard 객체 생성 후 setPrintNameCard 메서드를 만들어 들어오는 매개변수 PrintNameCard p 값을 this . PrintNameCard에 새로 저장, print메서드를 생성해 printNameCard.print( this ); -> this를 출력. PrintName..
Interface 인터페이스 abstract class : 일반 method + abstract method + variable JAVA는 다중상속이 불가능(부모는 1개) interface : abstract method(추상메서드로만 이루어짐->변수,일반메서드 불가능// 선언만되어있는 요소) 다중 상속이 가능하다. 설계의 사양을 빠르게 파악 할 수 있는 장점이 있다. 확장성, 관리의 목적을 가지고 있다. ** MyInterface 메서드() 호출 시 MyClass 메서드로 호출되는데 이는, 부모 인터페이스로 각각의 인터페이스로 잡아 줄 수 있기 때문 **minter.func( );는 에러가 나므로 앞에 func()를 보유 한 YouInterface로 형변환 후 실행하면 HeClass func()가 나온다 MyClass public..