Está en la página 1de 12

MANUAL BSICO PARA TRABAJOS CON CADENAS EN JAVA ndice de contenido

Introduccin..........................................................................................................................................1 Representacin de cadenas en la programacin...................................................................................1 Algunos caracteres especiales..........................................................................................................2 Cadenas en Java....................................................................................................................................3 Construccin de cadenas en Java.....................................................................................................3 Operadores de cadenas en Java........................................................................................................4 Funciones de cadenas en Java..........................................................................................................5 Acceso a in ormacin de las cadenas..........................................................................................! "odi icacin de cadenas.............................................................................................................# Comparacin de cadenas.............................................................................................................$ Capitali%acin de las cadenas....................................................................................................1& Conversin de tipos...................................................................................................................1& Otras uncionalidades interesantes............................................................................................11 '(ercicios............................................................................................................................................12 )i*liogra +a.........................................................................................................................................12

Introduccin
,emos aprendido a di erenciar entre clase - o*(etos. as+ como a acceder desde un o*(eto a sus caracter+sticas - unciones comport/ndonos como usuarios de clases. ,o- iniciaremos el estudio de las cadenas - la orma de tra*a(ar con ellas en el lengua(e de programacin Java..

Repre ent!cin de c!den! en "! pro#r!$!cin


'n programacin las cadenas son una secuencia de caracteres. inclu-endo letras 0ma-1sculas min1sculas2. signos. espacios. caracteres especiales. etc. 'n pala*ras simples. las cadenas sirven para guardar pala*ras. oraciones. etc. Adem/s se puede decir 3ue cada cadena tiene 4 caracteres. siendo 456&. 7or e(emplo. 4631 para la cadena8 "i 1er programa usando cadenas. Al enumerar consecutivamente cada uno de los caracteres de la secuencia es posi*le re erirnos a cada caracter por su enumeracin. 9ependiendo del lengua(e de programacin se comien%an a enumerar por & 1 - terminan en 4:1 4 respectivamente. A esta enumeracin se le denomina +ndice de los caracteres de la cadena. 7ara la enumeracin ;&.4:1<. la siguiente cadena se enumera en el rango ;&.3&< para 4631. " i
&

1 e r

p r o g r a m a

u s a n d o

c a d e n a s .

1 2 3 4 5 ! = # $ 1& 11 12 13 14 15 1! 1= 1# 1$ 2& 21 22 23 24 25 2! 2= 2# 2$ 3&

7ara la enumeracin ;1.4<. la siguiente cadena se enumera en el rango ;1.31< para 4631. " i
1

1 e r

p r o g r a m a

u s a n d o

c a d e n a s .

2 3 4 5 ! = # $ 1& 11 12 13 14 15 1! 1= 1# 1$ 2& 21 22 23 24 25 2! 2= 2# 2$ 3& 31

Algunos caracteres especiales


>as cadenas soportan todos los caracteres de la ta*la A?CII8

7ara utili%arlos se puede @castearA un n1mero entero 0la representacin decimal del caracter seg1n la ta*la A?CII2 a un @cBarA. cBar c 6 0cBar2 3!D EE signo pesos Adem/s se pueden utili%ar ciertos caracteres especiales. anteponiendo C8

C!den! en J!%!
'n (ava las cadenas son instancias de la clase String o StringBuffer - comien%an la enumeracin de sus caracteres por el +ndice &. >a clase ?tring est/ orientada a mane(ar cadenas de caracteres constantes. es decir. 3ue no pueden cam*iar. >a clase ?tring)u er permite 3ue el programador modi i3ue la cadena insertando. *orrando. etc. >a primera es m/s e iciente siempre 3ue no se re3uiera aumentar o disminuir la cantidad de caracteres de la cadena. -a 3ue esto conlleva a crear una nueva instancia de la clase ?tring por cada modi icacin de este tipo en la cadenaD de(ando al recolector de *asura la tarea de li*erar los espacios ocupados por las cadenas -a no usadas. ?in em*argo. la segunda es m/s leFi*le ante estas operaciones. Am*as clases pertenecen al pacGage java.lang. por lo 3ue no Ba- 3ue importarlas. 'n este manual nos centraremos solo en la clase ?tring.

Construccin de cadenas en Java


Hna instancia u o*(eto surge de dos acciones8 la declaracin - la construccin del o*(eto. por lo 3ue las instrucciones de cdigo 3ue se eFponen a continuacin solo est/n declarando un o*(eto str de la clase ?tring. pero a1n no Ba creado la instancia correspondiente. ?tring strD ?tring str 6 nu""D >a clase ?tring o rece varias unciones de construccin de cadenas. entre las 3ue se encuentran las 3ue se descri*en a continuacin. >as otras unciones permiten construir instancias de la clase ?tring a partir de arra-s de *-tes o de caracteres. as+ como a partir de o*(etos ?tring)u er - ?tring)uilder. &uncion!"id!d ?tring02 De cripcin Iniciali%a un o*(eto ?tring recientemente creado de modo 3ue representa una secuencia vac+a de caracteres. Iniciali%a un o*(eto ?tring recientemente creado de modo 3ue represente la misma secuencia de caracteres 3ue el argumento. en otras pala*ras. la cadena reciIn creada es una copia de la cadena del argumento. A menos 3ue se necesita una copia eFpl+cita del original. el uso de este constructor es innecesario. -a 3ue las cadenas son inmuta*les. Argumento: original8 una cadena >as cadenas u o*(etos de la clase ?tring se pueden crear eFpl+citamente o impl+citamente. siendo la orma impl+cita m/s e iciente de*ido a 3ue la orma eFpl+cita invoca al constructor de la clase dos vecesD una para crear la instancia impl+cita correspondiente al argumento - otra de orma eFpl+cita para Bacer una copia de la instancia correspondiente al argumento.

?tring0original8?tring2

7ara crear impl+citamente una instancia de la clase ?tring *asta con escri*ir una secuencia de caracteres entre comillas do*les. ?tring str 6 M'l primer programaMD Hn o*(eto de la clase ?tring se denomina nulo si no contiene caracteres. 7ara crear impl+citamente una cadena nula *asta con las comillas do*les. ?tring str 6MMD Jam*iIn eFisten casos en los 3ue Java crea un o*(eto de la clase ?tring de orma impl+cita. ?-stem.out.println0M'l primer programaM2D ?in em*argo. para crear eFpl+citamente un o*(eto de la clase ?tring se reali%a mediante la invocacin a uno de los constructores de la clase. ?tring str 6 neL ?tring0M'l primer programaM2D Otra variante para crear de orma eFpl+cita un o*(eto de la clase ?tring sin 3ue se invo3ue al constructor dos veces es pasando como argumento una instancia de la clase ?tring. 'sto reali%a una copia del argumento. ?tring str2 6 neL ?tring0 str 2D 7or lo 3ue para crear de orma eFpl+cita una cadena nula se reali%a mediante la invocacin al constructor por de ecto de la clase. ?tring str 6 neL ?tring02D

Operadores de cadenas en Java


E" oper!dor de conc!ten!cin '() al igual 3ue el operador de suma numIrica. este tiene asociatividad a la i%3uierda. ?u uncionalidad consiste en unir dos cadenas para ormar una tercera. Kariante 18 ?tring str 6 M'l primer programaM N M. usando cadenasMD Kariante 28 ?tring str1 6 M'l primer programaMD ?tring str2 6 M. usando cadenasMD ?tring str3 6 str1 N str2D ?i solo uno de los operandos es una cadena. el otro operando se convertir/ al tipo ?tring de modo impl+cito. int valor 6 5D ?tring str 6 M'l valor es8 M N valorD EE 'l valor es8 5

Lo oper!dore re"!cion!"e ** + ,* tienen la uncionalidad de veri icar si dos o*(etos de la clase ?tring re erencian a la misma o di erentes direcciones de memorias. respectivamente. 's decir. 3ue dos cadenas comparadas con 66 ser/n iguales si - solo si am*as cadenas son el mismo o*(eto. 7or e(emplo. sean las cadenas str1 - str2 instancias de la clase ?tring construidas de orma eFpl+cita. o 3ue al menos una de las dos cadenas es construida de orma eFpl+cita. Kariante 18 Am*os o*(etos son construidos de orma eFpl+cita. ?tring str1 6 neL ?tring 0M,ola mundoM2D ?tring str2 6 neL ?tring 0M,ola mundoM2D Kariante 28 Hno de los dos o*(etos es construido de orma eFpl+cita. ?tring str1 6 neL ?tring 0M,ola mundoM2D ?tring str2 6 M,ola mundoMD 'ntonces. el resultado de comparar str1 - str2 usando el operador 66 es alse por3ue a pesar de tener los mismos caracteres son dos instancias di erentes 0con direcciones de memoria di erentes2. *oolean cp 6 0str1 66 str22D EE cp vale alse cp 6 0str1 O6 str22D EE cp vale true

?in em*argo. si am*as cadenas 0str1 - str22 son construidas de orma impl+cita entonces el resultado de comparar str1 - str2 usando el operador 66 es true. ?tring str1 6 M,ola mundoMD ?tring str2 6 M,ola mundoMD *oolean cp 6 0str1 66 str22D EE cp vale true cp 6 0str1 O6 str22D EE cp vale alse

'sto ocurre por3ue el compilador de (ava. al identi icar 3ue am*as cadenas tienen la misma secuencia de caracteres. solo constru-e una instancia de la clase ?tring - las dem/s cadenas. con la misma secuencia de caracteres. solo re erencian a la 1nica instancia creada. 7or lo 3ue Ba- 3ue recurrir al uso de las uncionalidades e3uals. e3ualsIgnoreCase. compareJo o compareJoIgnoreCase 3ue o rece la clase ?tring de Java para comparar las secuencias de caracteres correspondientes a dos instancias di erentes de la clase ?tring.

Funciones de cadenas en Java


>a clase ?tring tiene una gran variedad de mItodos 1tiles mediante los cuales. una ve% creado un o*(eto de la clase ?tring. podemos o*tener - modi icar la in ormacin del o*(eto. >a lista completa puede encontrarse en la documentacin o icial. A continuacin se eFplican las uncionalidades m/s usadas.

Acce o ! in-or$!cin de "! c!den!


pu."ic int "en#t/')0 Retorna la longitud de la cadena. inclu-endo espacios en *lanco. >a longitud siempre es una unidad ma-or 3ue el +ndice asociado al 1ltimo caracter de la cadena. '(emplo8 ?tring s 6 McucuMD int l 6 s.lengtB02D EE l vale 4 pu."ic .oo"e!n i E$pt+')8 Retorna true si - solo si. la longitud de la cadena es &. Retorna alse en otro caso. '(emplo8 ?tring strD *oolean e 6 str.is'mpt-02D EEe vale alse str6McucuMD e 6 str.is'mpt-02D EEe vale alse str 6 MMD e 6 str.is'mpt-02D EEe vale true

pu."ic c/!r c/!rAt'int indice)0 retorna el caracter asociado al +ndice. 3ue se le pasa como argumento. de la cadena so*re la 3ue se aplica el mItodo. ?i el +ndice no arro(a un error de tipo ?tringIndeFOutO )ounds'Fception. '(emplo8 ?tring str6McucaMD cBar c 6 str.cBarAt012D EEc vale PuP pu."ic .oo"e!n t!rt 1it/'Strin# tr)8 retorna true si la cadena so*re la 3ue se aplica comien%a por la cadena pasada como argumento - alse si esto no ocurre. '(emplo8 ?tring str6McucaMD *oolean sL 6 str.startsQitB 0MucM2D EEsL vale alse

pu."ic .oo"e!n t!rt 1it/'Strin# tr2 int indice) 8 retorna true si la cadena so*re la 3ue se aplica comien%a por la cadena pasada como argumento a partir de un determinado +ndice asociado al segundo argumento - alse si esto no ocurre. '(emplo8 ?tring str6McucaMD *oolean sL 6 str.startsQitB 0MucM.12D EEsL vale true

pu."ic .oo"e!n end 1it/'Strin# tr)8 retorna true si la cadena so*re la 3ue se aplica termina en la cadena pasada como argumento - alse si esto no ocurre. '(emplo8 ?tring str6McucaMD *oolean eL 6 str.endsQitB 0McaM2D EEeL vale true

pu."ic int inde3O-'Strin# tr)8 retorna el +ndice a partir del 3ue aparece por primera ve% la cadena pasada como argumento. ?i no se encuentra la cadena retorna R1. '(emplo8 ?tring str6McucuMD int i 6 str. indeFO 0McuM2D EE i vale & int ( 6 str.indeFO 0MucaM2D EE ( vale :1 pu."ic int inde3O-'Strin# tr2 int indice)8 retorna el +ndice a partir del 3ue aparece por primera ve% la cadena pasada como argumento. comen%ando la *1s3ueda por un +ndice asociado al segundo argumento. ?i no se encuentra la cadena retorna R1. '(emplo8 ?tring str6McucuMD int i 6 str. indeFO 0McuM.22D EE i vale 2 int ( 6 str.indeFO 0McuM.32D EE ( vale :1 pu."ic int "! tInde3O-'Strin# tr)8 retorna el +ndice a partir del 3ue aparece por 1ltima ve% la cadena pasada como argumento. ?i no se encuentra la cadena retorna R1. '(emplo8 ?tring str6McucuMD int i 6 str. indeFO 0McuM2D EE i vale 2 int ( 6 str.indeFO 0McaM2D EE ( vale :1 pu."ic int "! tInde3O-'Strin# tr2 int indice) 8 retorna el +ndice a partir del 3ue aparece por 1ltima ve% la cadena pasada como argumento. comen%ando la *1s3ueda por un +ndice asociado al segundo argumento. ?i no se encuentra la cadena retorna R1. '(emplo8 ?tring str6McucuMD int i 6 str. indeFO 0McuM2D EE i vale 2 int ( 6 str.indeFO 0McaM2D EE ( vale :1

pu."ic Strin# u.Strin#'int indiceDe de) 8 retorna una nueva cadena con ormada por la secuencia de caracteres comprendidos entre el +ndice especi icado como argumento - la longitud :1 de la cadena so*re la 3ue se aplica la uncionalidad. ?i el argumento es menor 3ue cero o ma-or 3ue la longitud de la cadena. lan%a un error del tipo IndeFOutO )ounds'Fception. '(emplo8 ?tring str6McoroMD ?tring str2 6 str.su*?tring 022D EE str2 vale MroM str26 str.su*?tring 042D str26 str.su*?tring 052D EE str2 vale MM EE >an%a un error del tipo IndeFOutO )ounds'Fception

pu."ic Strin# u.Strin#'int indiceIni2 indice&in) 8 retorna una nueva cadena con ormada por la secuencia de caracteres comprendidos entre el +ndice inicial incluido - el +ndice inal eFcluidoD es decir. se comporta como un intervalo semia*ierto ;indiceIni. indiceFin2. ?i alguno de los argumentos es menor 3ue cero o ma-or 3ue la longitud de la cadena. lan%a un error del tipo IndeFOutO )ounds'Fception. '(emplo8 ?tring str6McoroMD ?tring str2 6 str.su*?tring 02.32D EE str2 vale MrM str26 str.su*?tring 02.22D str26 str.su*?tring 02.42D str26 str.su*?tring 02.52D EE str2 vale MM EE str2 vale MroM EE >an%a un error del tipo IndeFOutO )ounds'Fception

Modi-ic!cin de c!den!
pu."ic Strin# tri$')8 retorna una copia de la cadena sin los espacios en *lancos del inicio - inal de la cadenaD o la propia cadena si esta no contiene espacios en *lanco a su inicio o inal. '(emplo8 ?tring str6M cu cu MD ?tring str2 6 str. trim02D EE str2 vale @cu cuA

pu."ic Strin# rep"!ce 'c/!r %ie4oC/!r2 c/!r nue%oC/!r) 8 si el caracter oldCBar pasado como primer argumento no aparece en la cadena se retorna una re erencia a estaD de lo contrario se retorna una nueva cadena resultante de reempla%ar todas las apariciones de oldCBar por neLCBar en la cadena. '(emplo8 ?tring str6McucuMD ?tring str 6 str. replace0PuP. PoP2D EE str2 vale @cocoA

pu."ic Strin# rep"!ce 'C/!rSe5uence !Re$p"!6!r2 C/!rSe5uence re$p"!6o)8 retorna la cadena resultante de reempla%ar cada secuencia de caracteres 3ue coincide con la secuencia a rempla%ar especi icada como primer argumento por la secuencia de reempla%o especi icada como segundo argumento. 'l procedimiento de rempla%o se reali%a comen%ando por el primer caracter de la cadena - terminando en el 1ltimo. '(emplo8 ?tring str6McucucucucuMD ?tring str 6 str. replace0PcucuP. PcoP2D EE str2 vale @cococuA

Co$p!r!cin de c!den!
pu."ic .oo"e!n e5u!" 'Strin# tr)8 >a cadena so*re la 3ue se aplica la uncionalidad se compara leFicogr/ icamente con la cadena especi icada como argumento. Retorna true si - solo si el argumento no es nulo - es una cadena 3ue representa la misma secuencia de caracteres 3ue la cadena so*re la 3ue se aplica la uncionalidad. Retorna alse en otro caso. '(emplo8 ?tring str6McucuMD *oolean e3 6 str.e3uals0MCucuM2D EE e3 vale alse e3 6 str.e3uals0McucuM2D EE e3 vale true pu."ic .oo"e!n e5u!" I#noreC! e'Strin# tr)8 >a cadena so*re la 3ue se aplica la uncionalidad se compara leFicogr/ icamente con la cadena especi icada como argumento. ignorando las di erencias entre ma-1sculas - min1sculas. Retorna true si - solo si el argumento no es nulo - es una cadena 3ue representa la misma secuencia de caracteres 3ue la cadena so*re la 3ue se aplica la uncionalidad. Retorna alse en otro caso. '(emplo8 ?tring str6McucuMD *oolean e3 6 str.e3uals0MCucuM2D EE e3 vale true e3 6 str.e3uals0McucuM2D EE e3 vale true pu."ic int co$p!reTo'Strin# tr)8 Compara dos cadenas leFicogr/ icamente. >a comparacin se *asa en el valor unicode de cada caracter de las cadenas. >a cadena so*re la 3ue se aplica la uncionalidad se compara leFicogr/ icamente con la cadena especi icada como argumento. Retorna un entero negativo si la cadena so*re la 3ue se aplica la uncionalidad precede leFicogr/ icamente la cadena especi icada como argumento. cero si am*as cadenas son iguales - un entero positivo en otro caso. '(emplo8 ?tring str6McucuMD int ct 6 str.e3uals0MCucuM2D EE ct vale 32. @cucuA 5 @CucuA ct 6 MCucuM.e3uals0str2D EE ct vale :32. @CucuA S @cucuA ct 6 str.e3uals0McucuM2D EE ct vale &. @cucuA 66 @cucuA

pu."ic int co$p!reToI#noreC! e'Strin# tr)8 Compara dos cadenas leFicogr/ icamente ignorando las di erencias entre ma-1sculas - min1sculas. Retorna un entero negativo si la cadena so*re la 3ue se aplica la uncionalidad precede leFicogr/ icamente la cadena especi icada como argumento. cero si am*as cadenas son iguales - un entero positivo en otro caso. '(emplo8 ?tring str6McucuMD int ct 6 str.e3uals0MCucuM2D EE ct vale &. @cucuA 66 @CucuA ct 6 MCHCHM.e3uals0str2D EE ct vale &. @CHCHA 66 @cucuA ct 6 str.e3uals0McucuM2D EE ct vale &. @cucuA 66 @cucuA

C!pit!"i6!cin de "! c!den!


pu."ic Strin# toLo7erC! e')8 retorna una nueva cadena como resultado de la conversin a min1scula de todos los caracteres de la cadena so*re la 3ue se aplica la uncionalidad. '(emplo8 ?tring str6MCucHMD ?tring str2 6 str.to>oLerCase02D EE str2 vale @cucuA

pu."ic Strin# toUpperC! e')8 retorna una nueva cadena como resultado de la conversin a ma-1scula de todos los caracteres de la cadena so*re la 3ue se aplica la uncionalidad. '(emplo8 ?tring str6McucuMD ?tring str2 6 str.toHpperCase02D EE str2 vale @CHCHA

Con%er in de tipo
pu."ic Strin# toStrin#')8 retorna la cadena correspondiente al o*(eto so*re el 3ue se aplica la uncionalidad. '(emplo8 Comple(o c 6 neL Comple(o02.3. :52D EEse constru-e un o*(eto 3ue representa un n1mero comple(o ?tring str 6 c.to?tring02D EE str vale @2.3 : 5iA

7ara convertir un valor de tipo primitivo a cadena se emplea la uncin est/tica valueO . >a clase ?tring proporciona versiones de valueO para convertir los datos primitivos8 *oolean. cBar. int. long. loat - dou*le. 'stas se invocan mediante la clase - no la instancia 0o*(eto2 de la clase.

1&

&uncion!"id!d t!tic Strin# %!"ueO-'.oo"e!n %!"or) t!tic Strin# %!"ueO-'c/!r %!"or) t!tic Strin# %!"ueO-'int %!"or) t!tic Strin# %!"ueO-'"on# %!"or) t!tic Strin# %!"ueO-'-"o!t %!"or) t!tic Strin# %!"ueO-'dou."e %!"or)

E4e$p"o ?tring str 6 ?tring.valueO 0true2D EE str vale @trueA ?tring str 6 ?tring.valueO 0PaP2 D ?tring str 6 ?tring.valueO 01&2D EE str vale @aA EE str vale @1&A

?tring str 6 ?tring.valueO 02.52D

EE str vale @2.5A

'Fisten otras uncionalidades 3ue aun3ue no son de la clase ?tring si son mu- utili%adas para o*tener el resultado inverso de la uncionalidad valueO . 's decir. a partir de la cadena o*tener su *oolean. int. long. loat o dou*le correspondiente. .oo"e!n Boo"e!n8p!r eBoo"e!nt'Strin# tr)0 retorna el valor *oolean correspondiente a la cadena especi icada como argumento. '(emplo8 *oolean v 6 )oolean.parse)oolean0MtrueM2D EE v vale true int Inte#er8p!r eInt'Strin# tr)0 retorna el valor int correspondiente a la cadena especi icada como argumento. "on# Lon#8p!r eLon#'Strin# tr)0 retorna el valor long correspondiente a la cadena especi icada como argumento. '(emplo8 int v 6 Integer.parseInt0M5M2D EE v vale 5 -"o!t &"o!t8p!r e&"o!t'Strin# tr)0 retorna el valor loat correspondiente a la cadena especi icada como argumento. dou."e Dou."e8p!r eDou."e'Strin# tr)8 retorna el valor dou*le correspondiente a la cadena especi icada como argumento. '(emplo8 loat v 6 Float.parseFloat0M2.5M2D EE v vale 2.5

Otr! -uncion!"id!de intere !nte


>a clase ?tring o rece entre tantas otras uncionalidades. algunas 3ue son tan usadas como las descritas en este documento - de las cuales se puede o*tener m/s in ormacin en la documentacin del lengua(e Java. 'stas son8

11

pu."ic Strin# rep"!ceA""'Strin# re#e32 Strin# rep"!ce$ent) pu."ic Strin# rep"!ce&ir t'Strin# re#e32 Strin# rep"!ce$ent) pu."ic Strin#9 : p"it'Strin# re#e3) pu."ic Strin#9 : p"it'Strin# re#e32 int "i$it) t!tic Strin# %!"ueO-' c/!r9: d!t!) t!tic Strin# %!"ueO-'c/!r9: d!t!2 int o-- et2 int count) pu."ic c/!r9 : toC/!rArr!+')

E4ercicio
1. 9esarrolle un programa 3ue a partir de una cadena especi icada como argumento. retorne true si esta solo contiene n1meros - alse en otro caso. 2. 9esarrolle un su*programa 3ue a partir de una cadena especi icada como argumento. retorne la cadena invertida correspondiente. '(emplo8 ?ea la cadena @,olaA. entonces su invertida es @alo,A 3. 9esarrolle un su*programa 3ue a partir de una cadena especi icada como argumento. retorne true si es reversi*le - alse en caso contrario. Hna cadena es reversi*le si esta es igual a su cadena invertida correspondiente. 4. 9esarrolle un programa 3ue dado un n1mero entero le in orme al usuario si este es simItrico o no. Hn n1mero simItrico es a3uel 3ue se lee igual desde su centro Bacia la derecBa como desde su centro Bacia la i%3uierda. '(emplo8 ?ea el n1mero 4612321 entonces el centro es el 3. la lectura Bacia la i%3uierda es 321 - la lectura Bacia la derecBa es 321. Como am*as lecturas son iguales el n1mero 4 es simItrico. 5. 9esarrolle un su*programa. sin Bacer uso de la uncin contains de Java. 3ue a partir de una cadena - una su*cadena. am*as especi icadas como argumentos. retorne true si la su*cadena est/ contenida en la cadena - alse en otro caso. !. 9esarrolle un su*programa 3ue dada una cadena - una su*cadena. am*as especi icada como argumentos. retorne la cantidad de veces 3ue la su*cadena est/ contenida en la cadena. =. 9esarrolle un programa 3ue a partir de una cadena dada por el usuario determine e in orme al usuario cu/l es el caracter 3ue m/s se repite en la cadena.

Bi."io#r!-;!
1. Colectivo de autores8 Java9oc. @Class String, JavaJ" 7lat orm ?tandard 'd. =. 2. Tarc+a. J. - otros 02&&&28 Aprenda Java como si estuviera en primero . ep+gra es 2.2.$ 4.2. 3. Colectivo de autores8 @IIC110 ! Introducci"n a la #rogramaci"n, cap+tulo 58 ?trings. 7onti icia Hniversidad Catlica de CBile. 4. UuGoLsGi. J.02&&328 #rogramaci"n en Java $, volumen 1. pp 1&=.

12

También podría gustarte