Kā pārbaudīt, vai virknē parādās viena rakstzīme?

Vai Java ir veids, kā pārbaudīt šo nosacījumu:

"Vai šī viena rakstzīme vispār parādās virknē x"

neizmantojot cilpu?

Risinājums

Varat izmantot string.indexOf('a').

Ja 'a' atrodas virzienā, tad tiek atgriezts indekss(>=0). Ja tā nav, tad atgriež -1. Tātad nenegatīva atgriešanas vērtība nozīmē, ka 'a' ir virknē.

Komentāri (8)
  • String.contains(), kas pārbauda, vai virkne satur norādīto rakstzīmju vērtību secību.
  • String.indexOf(), kas atgriež norādītās rakstzīmes vai apakšvirknes pirmās parādīšanās indeksu virknē (ir 4 šīs metodes varianti).
Komentāri (3)

Lai pārbaudītu, vai virknē kaut kas nepastāv, ir jāpārbauda vismaz katra virknes rakstzīme. Tātad, pat ja jūs neizmantojat cilpu, tās efektivitāte būs tāda pati. Ņemot to vērā, varat mēģināt izmantot str.contains(""+char).

Komentāri (1)