50
C 5 CHAPTER HAPTER 5 ARRAY RRAY & S & STRING TRING Mr.Warawut Khangkhan e-Mail: [email protected] Social Media: www.facebook.com/AjWarawut

Object-Oriented Programming 5

  • Upload
    warawut

  • View
    577

  • Download
    0

Embed Size (px)

DESCRIPTION

Array & String

Citation preview

Page 1: Object-Oriented Programming 5

CC 55CCHAPTERHAPTER 55

AARRAYRRAY & S& STRINGTRINGMr.Warawut Khangkhan

e-Mail: [email protected]

Social Media: www.facebook.com/AjWarawut

Page 2: Object-Oriented Programming 5

Mr.W

ara

wut K

hangkhan

Chapte

r 5 A

rray &

Strin

g

AARRAYRRAY

Arra

y &

Strin

g

2

Page 3: Object-Oriented Programming 5

AARRAYRRAY

�Array (��������) ����� ���� ����������������ก��������

��������ก� ����กก�!� 1 �!� ����ก����� �"��#��$���"��

�����ก� ��������$�� #%�$&! (Index) ��#����ก

�%��������� �����ก

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�%��������� �����ก

���� ���� �� ����������'ก������������&���( �!�����ก�����!

)&!������*%�#!��"�� ก� ���)�� Index ��� �+ �!����������

#�� ก��

3

Arra

y &

Strin

g

�����ก���� 1

Index � [0] [1] … [n-1]

�����ก���� 2 … �����ก���� n

Page 4: Object-Oriented Programming 5

��������������������������������

�$�ก��������� ���������*���ก��

� ���������� ���������,"-.� (Array of Primitive Data

Type)

� ���������� ���������$����/�/�����0� (Array of

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

� ���������� ���������$����/�/�����0� (Array of

Reference Data Type)

�*%�$ก��������� ��������

� #��$���������� 1 ��#� (One-Dimensional Array)

� #��$����������&�����#� (Multi-Dimensional Array)4

Arra

y &

Strin

g

Page 5: Object-Oriented Programming 5

OONENE--DDIMENSIONALIMENSIONAL AARRAYRRAY Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

dataType [ ] arrayName

ก�����ก������������������ 1 ����

ก��������������������������ก����� �!�����!�"���ก��

5

Arra

y &

Strin

garrayName = new dataType[ n ];

ก��������������������������ก����� �!�����!�"���ก��

Example:

int[ ] number;

number = new int[5];

orint number = new int[5];

Page 6: Object-Oriented Programming 5

OONENE--DDIMENSIONALIMENSIONAL AARRAYRRAY Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

dataType[ ] arrayName =

{ init_value1, init_value2, …,

init_value };

ก��ก�����#$�!���������������

6

Arra

y &

Strin

g

init_value };

Example:

char[ ] grade = {‘A’, ‘B’, ‘C’, ‘D’, ‘F’};

Page 7: Object-Oriented Programming 5

OONENE--DDIMENSIONALIMENSIONAL AARRAYRRAY Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

arrayName[0] = init_value1;

arrayName[1] = init_value2;

ก��ก�����#$�!��������������� (�$�)

7

Arra

y &

Strin

g

arrayName[n-1] = init_value

Example:

char[ ] grade;

grade = new char[2];

grade[0] = ‘A’

grade[1] = ‘B’

Page 8: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

8

Page 9: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

9

Page 10: Object-Oriented Programming 5

OONENE--DDIMENSIONALIMENSIONAL AARRAYRRAY Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

for (int i = 0; i < arrayName.length; i++) {

statements;

};

ก���$���'�ก���������('!������������������#������ for

10

Arra

y &

Strin

g

};

length �� method ���)���%�&���&�*%�������ก

�� #��$����������

Page 11: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

11

Page 12: Object-Oriented Programming 5

METHOD �� CLASS ARRAYS

�method binarySearch( ) – )��)ก��&�

*%�������ก�� #��$�� array

nnnn = = = = arrayName.lengtharrayName.lengtharrayName.lengtharrayName.length;;;;

method sort( ) –

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�method sort( ) – )���%�&������� �%����)#��$��

array *�ก��� �&���ก

Arrays.sortArrays.sortArrays.sortArrays.sort((((arrayNamearrayNamearrayNamearrayName););););

12

Arra

y &

Strin

g

Page 13: Object-Oriented Programming 5

METHOD �� CLASS ARRAYS

�method binarySearch( ) – )��)ก����&�

���������#�� ก��)#��$�� array (*������ �%����ก!�)

idxValueidxValueidxValueidxValue = = = =

Arrays.binarySeachArrays.binarySeachArrays.binarySeachArrays.binarySeach((((arrNamearrNamearrNamearrName, , , ,

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

Arrays.binarySeachArrays.binarySeachArrays.binarySeachArrays.binarySeach((((arrNamearrNamearrNamearrName, , , ,

valvalvalval););););

�method fill( ) – )���%�&���ก%�&��!�������)&�ก��

#��$�� array *�ก��� �&���ก

Arrays.fillArrays.fillArrays.fillArrays.fill((((arrayNamearrayNamearrayNamearrayName, value);, value);, value);, value);13

Arra

y &

Strin

g

Page 14: Object-Oriented Programming 5

METHOD �� CLASS ARRAYS

�method equals( ) – )���%�&���������������!�

������)#��$�� array

result = result = result = result =

Arrays.equalsArrays.equalsArrays.equalsArrays.equals(arrayName(arrayName(arrayName(arrayName1111, , , ,

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

Arrays.equalsArrays.equalsArrays.equalsArrays.equals(arrayName(arrayName(arrayName(arrayName1111, , , ,

arrayNamearrayNamearrayNamearrayName2222););););

14

Arra

y &

Strin

g

Example Source Code: ChExample Source Code: ChExample Source Code: ChExample Source Code: Ch05050505____04040404

Page 15: Object-Oriented Programming 5

TTWOWO--DDIMENSIONALIMENSIONAL AARRAYRRAY Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

dataType [ ][ ] arrayName

ก�����ก������������������ 2 ����

ก��������������������������ก����� �!�����!�"���ก��

15

Arra

y &

Strin

garrayName = new dataType[ m ][ n ];

ก��������������������������ก����� �!�����!�"���ก��

Example:

int[ ][ ] number;

number = new int[2][4];

Page 16: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

16

Page 17: Object-Oriented Programming 5

"#�����������('"#�����������(' AARRAYRRAYLLISTIST

�ArrayList ����� ���� �����������ก��*���ก��)���$��

���ก���%�������#!��"�� ���)����������$�'��� �+ ������)

�%����)�( ����ก���'�3#%�$&! (index) �� ���������

#�� ก��

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

#�� ก��

�ArrayList �� ���ก���ก����������'�4� object 0+� ��

array �� Reference ��'�4�&+� �������������

��� ���� �����#���#�

17

Arra

y &

Strin

g

Page 18: Object-Oriented Programming 5

METHOD �� CLASS

ARRAYLIST

�method size( ) – &�*%�������ก��- &���� ArrayList

n = n = n = n = arrayListName.sizearrayListName.sizearrayListName.sizearrayListName.size( );( );( );( );

method add( ) – )���,��������ก) ArrayList

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�method add( ) – )���,��������ก) ArrayList

arrayListName.addarrayListName.addarrayListName.addarrayListName.add((((objectValueobjectValueobjectValueobjectValue););););

ororororarrayListName.addarrayListName.addarrayListName.addarrayListName.add(index, (index, (index, (index,

objectValueobjectValueobjectValueobjectValue););););

18

Arra

y &

Strin

g

Page 19: Object-Oriented Programming 5

METHOD �� CLASS

ARRAYLIST

�method get( ) – &��!������ก) ArrayList 5 #%�$&! ���#�� ก��

objectValueobjectValueobjectValueobjectValue = = = = arrayListName.getarrayListName.getarrayListName.getarrayListName.get(index);(index);(index);(index);

�method remove( ) – )���������ก) ArrayList

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�method remove( ) – )���������ก) ArrayList

ArrayList 5 #%�$&! ���#�� ก�� arrayListName.removearrayListName.removearrayListName.removearrayListName.remove(index);(index);(index);(index);

�method indexOf( ) – )����&��!�#%�$&! �� �����ก���#�� ก��) ArrayList

index = index = index = index = arrrayListName.indexOfarrrayListName.indexOfarrrayListName.indexOfarrrayListName.indexOf((((objectValueobjectValueobjectValueobjectValue););););

19

Arra

y &

Strin

g

Page 20: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

20

Page 21: Object-Oriented Programming 5

ก��!��#������ก��!��#������ FFOROR EACHEACH LOOPLOOP

����%���� �����,"�������+ ������$#!�'#%�$&! )�������� &�"�ArrayList

��!���6� ก�ก���ก�����7��,���)��"�� ก����� �+ ����������ก�

�����#�� �����������

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�����#�� �����������(IndexOutOfBoundsException)

����*%�ก�� �"� �!������ก%�&������#�� ก������#�����

#�� ก�� ��

21

Arra

y &

Strin

g

Page 22: Object-Oriented Programming 5

ก��!��#������ก��!��#������ FFOROR EACHEACH LOOPLOOPM

r.Wara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

for (arrayType arrayValue : arrayName) {

statement;

}

�(����

22

Arra

y &

Strin

g

}

arrayType ������������� array &�"� ArrayList

arrayValue ���"��#��$�����)�������+ ������)$#!�'���

arrayName ���"��#��$�� array &�"� ArrayLit

Page 23: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

23

Page 24: Object-Oriented Programming 5

ก��!��ก��!�� EENUMERATEDNUMERATED TTYPESYPES

������ ���� ������������� �+-�%�&���ก%�&�ก�3!��� �!�� ���

��� �!#�� ก%�&���!�� ������'�!�

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�(����

24

Arra

y &

Strin

genumName {value-1, value-2, …, value-n}

�(����

Example Source Code: ChExample Source Code: ChExample Source Code: ChExample Source Code: Ch05050505____08080808

Page 25: Object-Oriented Programming 5

Mr.W

ara

wut K

hangkhan

Chapte

r 5 A

rray &

Strin

g

SSTRINGTRING

Arra

y &

Strin

g

25

Page 26: Object-Oriented Programming 5

SSTRINGTRING

�����������������'ก������#����ก��'&���( #�������� #!�

ก����������

�ก��*� ,"-���&!������*%� *'��ก��*� �,"���ก���!���

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

#%�$&! ��� �� ���)��)ก�������+ �!������� ��� �!)�!�!��� ������

26

Arra

y &

Strin

g

Page 27: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

27

Page 28: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method equals( ) – )���%�&���������������!�

��������� String 2 �!�

result = strresult = strresult = strresult = str1111.equals(str.equals(str.equals(str.equals(str2222););););

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

28

Arra

y &

Strin

g

)����#$��$�ก�� *�#+�#$���,� True

)����#$� �$�$�ก�� *�#+�#$���,� False

Page 29: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

29

Page 30: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method compareTo( ) – )���%�&���

������������!���������� String 2 �!�

result = strresult = strresult = strresult = str1111.compareTo(str.compareTo(str.compareTo(str.compareTo(str2222););););

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

30

Arra

y &

Strin

g

)�� str1 ��#$� > str2 *�#+�#$���,� -*������.��ก/

)�� str1 ��#$� = str2 *�#+�#$���,� -*������.��(���/

)�� str1 ��#$� < str2 *�#+�#$���,� -*������.�'�/

Page 31: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

31

Page 32: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method concat( ) – )���%�&�����"���#!�������

��� String &�"�)�����"�� &��� +

strstrstrstr3 3 3 3 = str= str= str= str1111.concat(str.concat(str.concat(str.concat(str2222););););

orororor

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

ororororstrstrstrstr3 3 3 3 = str= str= str= str1 1 1 1 + str+ str+ str+ str2222;;;;

32

Arra

y &

Strin

g

Page 33: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

33

Page 34: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method substring( ) – )���%�&���#��������

��� String )&�����������!��

strstrstrstr2 2 2 2 = str= str= str= str1111.substring(x, y);.substring(x, y);.substring(x, y);.substring(x, y);

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

34

Arra

y &

Strin

g

Page 35: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

35

Page 36: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method replace( ) – )���%�&���#�����������

String )&�����������!��

strstrstrstr2 2 2 2 = str= str= str= str1111.replace(str.replace(str.replace(str.replace(str3333, str, str, str, str4444););););

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

36

Arra

y &

Strin

g

str3 ��,����#����)(ก����!����#������

str4 ��,����#������� �����!����#������

Page 37: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

37

Page 38: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method toUpperCase( ) – )���%�&������������������ String )&���#����ก8�,��,�)&9!

strstrstrstr2 2 2 2 = str= str= str= str1111.toUpperCase( );.toUpperCase( );.toUpperCase( );.toUpperCase( );

�method toLowerCase( ) – )���%�&���������

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�method toLowerCase( ) – )���%�&������������������ String )&���#����ก8�,��,����ก

strstrstrstr2 2 2 2 = str= str= str= str1111.toLowerCase( ); .toLowerCase( ); .toLowerCase( ); .toLowerCase( );

�method length( ) – )���%�&�����*%��#����ก��'�� ��������� String

n = n = n = n = str.lengthstr.lengthstr.lengthstr.length( ); ( ); ( ); ( ); 38

Arra

y &

Strin

g

Page 39: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

39

Page 40: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method charAt( ) – )���%�&�����&�$�'$��

�!�#����ก��')��������� String 5 #%�$&! ���#�� ก��

chchchch = = = = str.charAtstr.charAtstr.charAtstr.charAt(index);(index);(index);(index);

method indexOf( ) –

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�method indexOf( ) – )���%�&�����&�$�'$��

�!�#%�$&! �� #����ก��')��������� String

index = index = index = index = str.indexOfstr.indexOfstr.indexOfstr.indexOf((((chchchch); ); ); );

40

Arra

y &

Strin

g

Page 41: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

41

Page 42: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method startsWith( ) – )���%�&���#��*���

��������!�&���� ��������� String

result result result result = = = = strstrstrstr1111.startsWith(str.startsWith(str.startsWith(str.startsWith(str2222););););

Method endsWith( ) –

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�Method endsWith( ) – )���%�&���#��*���

��������!������� ��������� String

result = strresult = strresult = strresult = str1111.endsWith(str.endsWith(str.endsWith(str.endsWith(str2222); ); ); );

42

Arra

y &

Strin

g

result *�#+�#$���,� True ��+� False

Page 43: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

43

Page 44: Object-Oriented Programming 5

METHOD �� CLASS STRING

�method lastIndexOf( ) – )���%�&�����&�

$�'$�� �!�#%�$&! �3��������,�#����ก��')���������

String

index = index = index = index = str.lastIndexOfstr.lastIndexOfstr.lastIndexOfstr.lastIndexOf((((chchchch););););

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

index = index = index = index = str.lastIndexOfstr.lastIndexOfstr.lastIndexOfstr.lastIndexOf((((chchchch););););

44

Arra

y &

Strin

gindex ��,�������$��0�����������ก��� ch ��

#����1�!� str �'�!�ก�2��� �$1�����ก��� ch

*�!��#$���,�*������.�'�

Page 45: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

45

Page 46: Object-Oriented Programming 5

#'��#'�� SSTRINGTRINGBBUFFERUFFER �'��'�

SSTRINGTRINGBBUILDERUILDER

�class StringBuffer ����ก85'ก��)�� �

�&�"����� String $#!���35����#��� ��!� ���$#ก#!�

*�ก���� String �"�

String

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

� String �!������������$�� �!�������!4��) ��&�� *�ก���

��ก���� �+-��$���

� ก��)�� method ������$�� �!� String *'��ก��

���� String #��)&�! (ก���%� �����'���:�4�,��กก�!�)

46

Arra

y &

Strin

g

��� StringBuffer ��� String

Page 47: Object-Oriented Programming 5

#'��#'�� SSTRINGTRINGBBUFFERUFFER �'��'�

SSTRINGTRINGBBUILDERUILDER

�class StringBuilder ����ก85'ก��)�� �

�&�"����� StringBuffer $#!���35����#�

�� ��!� ���$#ก#!� *�ก���� StringBuffer �"�

class StringBuffer ��ก���%� ��������3

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

class StringBuffer ��ก���%� ��������3

$�'���� ��������4��)ก�5��� ����#�� �%� Thread

Synchronization $#!*'�%� �����ก�!� class

StringBuilder

47

Arra

y &

Strin

g

Page 48: Object-Oriented Programming 5

MMETHODETHOD !�!� CCLASSLASS SSTRINGTRINGBBUFFERUFFER

ANDAND SSTRINGTRINGBBUILDERUILDER

�method append( ) )���%�&����,����������

$��#!����������� StringBuffer ����

strstrstrstr3 3 3 3 = = = = strstrstrstr1111.append(str.append(str.append(str.append(str2222););););

method insert( )

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

�method insert( ) )���%�&����,����������$��

$��ก�'&�!� ������ StringBuffer ���� 5 #%�$&!

���#�� ก��

strstrstrstr3 3 3 3 = = = = strstrstrstr1111.insert(index, str.insert(index, str.insert(index, str.insert(index, str2222););););

48

Arra

y &

Strin

g

Page 49: Object-Oriented Programming 5

MMETHODETHOD !�!� CCLASSLASS SSTRINGTRINGBBUFFERUFFER

ANDAND SSTRINGTRINGBBUILDERUILDER

�method delete( ) )���%�&������!���

�������)������ StringBuffer 5 #%�$&! ���

#�� ก��

strstrstrstr2 2 2 2 = = = = strstrstrstr1111.delete(x, y);.delete(x, y);.delete(x, y);.delete(x, y);

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

g

strstrstrstr2 2 2 2 = = = = strstrstrstr1111.delete(x, y);.delete(x, y);.delete(x, y);.delete(x, y);

�method length( ) )���%�&�����*%��#��

��ก��'�� ������ StringBuffer

intintintint n n n n = = = = str.lengthstr.lengthstr.lengthstr.length( );( );( );( );

49

Arra

y &

Strin

g

Page 50: Object-Oriented Programming 5

Mr.W

ara

wut

Khangkhan

Chapte

r 5 A

rray &

Strin

gA

rray &

Strin

g

50