JAVA 78

210820_Hashset+Iterator

//컬렉션: 자료구조(set,vector,arrayList) //제네릭: 명시한 자료를 구현한 것, 컬렉션과 거의 동일하게 봄 //(인터페이스명 or 클래스명) 객체이름 = new 클래스명 //컬렉션과 배열의 차이: 컬렉션은 복수자료형 저장 가능하며 크기가 가변적(배열은 정반대이며 안정성이 떨어짐) //List: 순서가 중요할 때, 중복가능 //Set: 유일성이 중요할 때(중복 불가능), 순서는 안 지켜짐 (list 정반대) //Map: key값으로 value값을 찾을 때 (예제1) public class HashSetEx05 { public static void main(String[] args) { Setset1=new HashSet(); //string을 넣으면 다른 건 안 되고 string만 가능..

JAVA 2021.08.20

210820_filereader+filewriter+scanner

//콘솔창에 입력하고 컴파일할 때마다 메모장에 누적 저장됨 public class FileReadWriteEx04 { //메인에서 처리할게 많으니 여기서 한번에 다 함 static final String FILENAME="파일(메모장) 저장할 경로\\저장할이름.txt"; // "C;\\sist0730\\javawork\\sungjuk.txt" FileReader fr; BufferedReader br; FileWriter fw; Scanner sc=new Scanner(System.in); //메뉴 번호 선택하는 메서드 public int getMenu() { //몇 번호를 선택하는 거기에 리턴값을 int로 하는게 좋음 int num=0; System.out.println("1.성적 입력 2.전체출력 9..

JAVA 2021.08.20

210820_FileWriter+scanner

//스캐너를 이용해서 콘솔창에서 입력하면 메모장에 저장됨 FileWriter fw; static final String FILENAME="메모장 저장 위치\\저장할이름.txt"; //상수는 대문자로 Scanner sc; //생성자 불러오기 public FileWriterEx03() { sc=new Scanner(System.in); //생성과 동시에 사용 가능해짐 } //데이터 입력 메서드 public void dataWrite() { //static은 생성 안 해주고 할 때 사용 try { fw=new FileWriter(FILENAME, true); //추가모드 생성 System.out.println("이름 입력"); String name=sc.nextLine(); System.out.println(..

JAVA 2021.08.20

210819_date format

Date date=new Date(); System.out.println(date); //날짜,시간을 원하는 형식에 맞춰 출력 //HH:24시간 MM:월 mm:분 SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd HH:mm"); System.out.println(sdf1.format(date)); //a:오전/오후, hh:12시간 SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd a hh:mm"); System.out.println(sdf2.format(date)); //EEE:요일짧게 EEEE:요일길게 SimpleDateFormat sdf3=new SimpleDateFormat("yyyy-MM-dd HH:m..

JAVA 2021.08.19

210819_filereader+bufferreader+split+tokenizer

(예제) public class FileTokenExceptionEx11 { public static void fileRead() { String fileName="메모장 저장한 거 파일경로 복사해서 붙여넣기"; FileReader fr=null; BufferedReader br=null; try { fr=new FileReader(fileName); br=new BufferedReader(fr); System.out.println("파일읽기 결과"); System.out.println("이름\t학교명\t학년"); System.out.println("--------------------"); while(true) { String s=br.readLine(); if(s==null) break; //spli..

JAVA 2021.08.19

210819_Exception(리뷰)

(예제1) String[]str= {"apple","banana","strawberry","kiwi"}; System.out.println("***차례대로 출력***"); for(int i=0;i=0;i--) { try { System.out.println(str[i]); }catch (ArrayIndexOutOfBoundsException e) { System.out.println("거꾸로 출력 중에 오류:"+e.getMessage()); } } //결과 ***차례대로 출력*** apple banana strawberry kiwi 배열요구: Index 4 out of bounds for length 4 ***거꾸로 출력*** 거꾸로 출력 중에 오류:Index 4 out of bounds for leng..

JAVA 2021.08.19

210818_Exception

Exception 가벼운 예외이거나 예상하고 있던 예외인 경우에 사용 예외처리를 해서 프로그램의 비정상적인 종료를 막자라는 취지이며 프로그램을 계속 진행할 수 있도록 함 RuntimeException: 컴파일러가 체크하진 않지만 실행상의 에러에 대비 Exception: 컴파일러가 체크해서 예외처리가 없으면 실행 안 됨. 반드시 작성해야만 컴파일 NullPointException: 생성하지 않고 클래스 메서드를 호출 NumberFormatException: 입력한 데이터의 형식 오류일 때 ArrayIndexOutofBoundsException: 문자열의 인덱스값에 관한 오류 ~~~~~~~~~~~~~~~~~~~~ ArithmeticException (예제) System.out.println("프로그램 시작"..

JAVA 2021.08.18

210818_익명내부클래스+상속

abstract class AbstEx2{ abstract public void dataAdd(); abstract public void dataList(); } class SubAbst extends AbstEx2{ //자식클래스 (상속) @Override public void dataAdd() { System.out.println("회원 추가"); } @Override public void dataList() { System.out.println("회원 목록"); } } public class AnonymousEx09 { //익명내부클래스형태 AbstEx2 abstEx2=new AbstEx2() { @Override public void dataList() { System.out.println("데이..

JAVA 2021.08.18

210818_익명내부클래스

(예제) //클래스 선언과 객체생성을 동시에 하는 이름없는 클래스(일회용) //이벤트 발생시 생성했다가 끝나면 메모리에서 제거됨(메모리 관리 효율적) abstract class AbstEx{ //추상메서드 abstract public void show(); } class OuterEx{ //외부클래스 //익명내부클래스 AbstEx ab=new AbstEx() { @Override public void show() { System.out.println("익명내부클래스"); } }; } public class AnonyInnerEx05 { public static void main(String[] args) { OuterEx ex=new OuterEx(); ex.ab.show(); //외부클래스참조변수명.익..

JAVA 2021.08.18