자바 8일차

8. 문자열처리(String, StringBuffer), 배열, 상속 및 오버라이딩개요



 • 문자열처리 String

Ex) StringTest2.java(사용자로부터 문자열을 입력->다양한 메서드 확인)

StringTest2

–결과값설명–
str = abcdef(012345)-> 인덱스번호
str.concat(‘test’) = abcdetest // str = “abcdef” + “test” =>”abcdeftest”
str.length()문자열의 길이 = 6
//———————————-
substring(첫번째인덱스번호)-> 첫번째 인덱스번호부터 문자열끝까지 출력
str.substring(2) = cdef
//———————————-
substring(첫인덱스번호, 두번째인덱스) -> 첫인덱스번호 포함, 두번째 인덱스번호 앞번호까지
-> 2부터 4번째까지 문자열을 뽑아내라
str.substring(2, 5) = cde
str.toUppercase() = ABCDEF
str.toLowercase() = abcdef
str.charAt(4) = e
//———————————-
indexOf(‘문자’)-> 문자열에 해당하는 인덱스번호 호출
//찾은 문자가 없으면 -> -1값을 리턴(못찾은 경우)
str.indexOf(‘a’) = 0
//replace(변경전 단어, 변경후 단어)
str.replace(‘a’, ‘c’) = cbcde
—————————
ex)”abcde” endWith(“cde”) ->(O)ture, (X)false
 


• StringBuffer

-> package j223.secure
Ex) StringBufTest.java(저장된 문자열을 중간에 변경 가능. 수정, 삭제가 가능(중요한 자료))

StringBufTest
‘A’+1=>66
char + int -> int + int
String + int => String


 Ex) Ex08_4.java

Ex08_4

String str = “Hello” + 1 + 2 + 3;
String str = new StringBuffer(“Hello”).append(“1″)
.append(“2″).append(“3″).toString();
 


과제풀이) ConvertTest2.java(강사님 풀이)
isDigit(문자) -> 숫자라면 true, 문자라면 false

Ex) e나 E가 입력됐을때(사용자로부터 값을 입력->출력->대->소)  

ConvertTest2

Ex) 숫자가 입력 됐을때(사용자로부터 값을 입력->출력->대->소)

ConvertTest2_1
※ isSpace(char ch) -> ‘a    ‘ => 공백이 들어가 있는지 체크해주는 메서드
Deprecated.  ==> 앞으로 더이상 이 메서드를 사용하지 말라는 표시
Replaced by isWhitespace(char). -> 이메서드로 변경
 


• 배열

-> package j223;
Ex) ArrayTest.java(배열의 생성방법2, 확장 for문)

ArrayTest

Ex) ArrayTest2.java(20대의 수와 그사람의 나이를 출력)

ArrayTest2

Ex) ArrayTest3.java(세대별의 수와 그사람의 나이를 출력)

ArrayTest3

Ex) ArrayTest4.java(연속해서(배열) 점수를 5번 입력-> 합계, 평균을 구하기)
50
70
80
90
78
————–> 배열 -> int, 숫자-> nextInt();
합계:? 평균:?==>계산

ArrayTest4
 
Ex) ArrayTest5.java(2차원 배열-> 표형식으로 데이터 저장)

ArrayTest5
 


● 상속성

 Ex) Empolyee.java((직원) => 입사 -> 전산처리)

Employee

생성자쉽게 만들기(source -> Generate Constructor using Fields)
– 꼭 멤버변수가 있어야 함

constructor - make it easy

-> Manager
Ex) Company.java(회사) -> main(상속이용)
A-> 2000줄, b-> 2000줄(중복돼서 반복해서 입력
A의 1700줄이 같고 나머지 300줄
copy 1700 + 코딩 300 => 2000줄
(재사용성)
상속 -> 재사용성-> 300줄
코딩양을 줄일목적-> 개발시간 단축

Company
 


▶ 다음시간

=>상속=>is a 관계(p.153), 상속의 특징?(p.154), p158->상속과 생성자와의 관계?
super(p160), p163-> 접근지정자와 상속과의 관계, p168->메서드 오버라이딩?
p.171 다형성->객체형변환와 연관 ->예제6-8 중요예제(나중에)
p.176  Object클래스와 상속