java
-
(JAVA) 자바 파일 탐색 & 재귀호출카테고리 없음 2018. 8. 24. 13:47
package blog.naver.com.explorer; import java.io.File; public class FileSystemExplorer { public void printFileSystem(String path) { // 1. 파일 객체 생성 (path 정보를 가지는 파일 만듬) File directory = new File(path); // 현재 경로를 파일 객체로 생성 // 1-1. directory 안의 내용을 탐색한다. String[] contents = directory.list(); File file = null; // 2. directory 객체의 내용이 폴더인지 파일인지 구분한다. for (String content : contents) { file = new File(d..
-
(JAVA) 자바 파일(File) 객체 입력 &출력 관련 메소드JAVA/컨셉 , 예제 2018. 8. 24. 13:45
자바 콘솔 프로그램에서는 재귀 프로그램을 접할 일이 많다고 한다. 그중 가장 큰 이유가 파일 탐색 및 제어에 있다. 오늘은 파일 객체 입력 & 출력 메소드 사용 방법에 대해 포스팅.1. 바탕화면에 newfolder 생성2. newfolder 내부에 다음과 같이 폴더 생성.3. java 폴더 안에 다음과 같이 폴더 및 텍스트 파일 생성4. java 폴더의 빨간 박스 클릭해 경로 복사해 다음과 같이 코드 작성한다. 모든 파일을 탐색하는 프로그램을 작성하는 절차는 다음과 같다. 객체 생성 방법 : File 파일명 = new File(파일 경로); // 파일 경로는 String 주요 메소드 및 파일 탐색 절차 isDirectory() : 폴더인 경우 true, 파일인 경우 false 리턴 list() : 파일 ..
-
(JAVA) 객체지향 프로그래밍 예제 & toStringJAVA/컨셉 , 예제 2018. 8. 24. 13:44
객체지향 프로그래밍은 무엇일까? 모든 데이터를 오브젝트(object;물체)로 취급하여 프로그래밍 하는 방법으로, 처리 요구를 받은 객체가 자기 자신의 안에 있는 내용을 가지고 처리하는 방식 ( 출처 : http://terms.naver.com/entry.nhn?docId=1128207&cid=40942&categoryId=32837 ) 이라고 구글링하면 나온다. 개인적으로 절대 와닿지 않을 정의라고 생각한다. 심지어 정의도 굉장히 많이 나오기 때문에 무엇이 맞는 것인지도 확실하게 하기 힘든 실정이다. 따라서 이해를 토대로 자신의 정의를 확립하는 것이 중요하다고 생각한다. 내가 정립한 객체지향 프로그래밍은 "세계의 축소판"이다. 여러가지 객체들이 각기 다른 도구(변수)들을 가지고 각자의 동작(메소드)를 해..
-
(JAVA) 생성자(Constructor) & SetterJAVA/컨셉 , 예제 2018. 8. 24. 13:42
클래스의 객체는 다양한 멤버 필드를 갖고 있을 것이다. 학생의 경우를 예로 들면 이름, 나이, 대학교, 전공 등을 멤버 필드로 둘 수 있다. public class Student { private String name; private int age; private String uni; private String major; // 다른 클래스에서 private 멤버변수에 무분별한 접근 및 제어 // 방지하기 위해 setter 함수에 특정 조건을 걸도록 함. public void setName(String name){ if(name.length() == 3) this.name = name; } public void setAge(int age){ this.age = age; } public void setUn..
-
(JAVA) 자바 문자열 출력 방법.JAVA/컨셉 , 예제 2018. 8. 24. 13:39
보통 문자열 출력을 위해 사용했던 메소드 sysout. System.out.println이지만 이클립스 및 STS에서 sysout만 치고 Ctrl+s 누르면 자동완성 해주기 때문에 sysout만을 사용한다. System.out.println("Hi");문자열에 숫자를 넣어서 출력하고 싶다면 + 연산자를 사용해야 하는데 그것이 많게 되면 +를 입력하는 것도 번거롭게 느껴진다. 이러한 문제를 String 클래스의 메소드를 이용해 해결할 수 있다. 포맷은 C언어의 printf와 거의 같다. double avr = 10.0; String msg = String.format("average : %.2f", avr); System.out.println(msg);다음과 같이 사용하면 일일이 문자열과 숫자를 더해 형변..
-
(JAVA) 자바 foreach카테고리 없음 2018. 8. 24. 13:34
학부수준에서는 자바, c, c++ 등에서 for문을 굉장히 많이 접할 것이다. 실무에서도 for를 가장 보편적으로 쓸 것이라 생각했지만 foreach를 오히려 더 많이 사용한다고 한다. 배열의 모든 원소를 순차로 탐색하는 경우 그 속도가 월등히 빠르기 때문이라고 한다. 사용법 : for(dataType dataName : dataList){ dataList의 값을 dataName으로 접근해 제어 가능 } int[] scores = {1,2,3,4,5,6,7,8,9,10}; int sum = 0; for(int i : scores){ System.out.println(i); }scores 배열의 인덱스 값을 순차대로 i에 넣고 원하는대로 제어. 배열 모든 원소 순차탐색하는 경우에 사용 가능
-
(JAVA) 자바 스캐너(Scanner)로 파일 내용 읽어오기JAVA/컨셉 , 예제 2018. 8. 24. 13:33
스캐너는 표준 입력(Stdin, 키보드)을 받을 수 있도록 돕는 객체이다. String을 비롯한 primitive 타입들로 변환해 받을 수 있도록 메소드들을 제공하고 있다. 주요 메소드와 특징 간단하게 정리하자면 next()문자열 반환함수. 공백(space)를 만나면 종료된다.nextLine()문자열 반환함수. 개행(Enter)를 만나면 종료된다. next()와 달리 띄어쓰기를 할 수 있다.nextInt() int 타입 반환함수. nextDouble()double 타입 반환 함수.package com.naver.cafe.club.biz; import java.util.Scanner; public class ScannerExample { public static void main(String[] args)..
-
(JAVA) 자바 래퍼(Wrapper) 클래스JAVA/컨셉 , 예제 2018. 8. 24. 13:31
개발자의 입장에서 문자열을 숫자로 바꾸어 원하는 연산을 할 수 있도록 가공하는 절차는 필수적이다. 하지만 문자열과 숫자는 데이터 타입이 다르기 때문에 형변환이 필수적이다. 일반적으로 문자열을 특정 토큰에 따라 나누는 split 메소드를 사용한다.다음과 같이 공백을 기준으로 String을 나누어 값을 출력한다. 여기서 모든 값들을 더하고 싶은 경우 어떻게 할까?System.out.println("sum of points : "+ msg[0]+msg[1]+msg[2]);다음과 같이 생각할 수도 있다. 하지만 결과는다음과 같이 50100200이 나온다. 데이터 타입이 문자열이고, 문자열에서 +연산은 단순히 문자를 이어쓰는 것에 불과하다. 산술 연산을 하지 않는다는 말이다. 이를 해결하기 위해 각각의 문자열을 ..