String methods (charAt(), concat(), equals(), indexOf(), isEmpty(), join(), lastIndexOf(), length(), split(), substring(), trim())

અગિયાર String methods, એક messy typed title: charAt/indexOf/length સાથે inspect કરો, trim/substring/split/concat/join સાથે new strings produce કરો, અને substring નો end index exclusive છે એ યાદ રાખો.

11 min read · 10 cards · 2 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

librarian human જેવી types કરે છે

આ અઠવાડિયાના front desk પરથી real input:

" let us c " (stray spaces), "" (કંઈ ન હોય ત્યારે Enter દબાયું), "Programming in ANSI C by Balagurusamy" (ફક્ત title part ની જરૂર).

BookBridge એ બધું clean, test, slice અને search કરવું જોઈએ. Java ની String class exactly આ માટે toolbox ship કરે છે, અને તમારા syllabus એ 11 tools ને names કરે છે. એમને 2 jobs સાથે family તરીકે શીખો: methods જે string ને inspect કરે છે, અને methods જે new one produce કરે છે (ક્યારેય ભૂલ્યા વગર: immutable, હંમેશા new).

Theory

પહેલા, Java જેવી count કરવાનું શીખો

નીચે ની દરેક method indexes, 0 થી starting માં બોલે છે. આ example ને pin કરો:

"Let Us C"

L e t ␣ U s ␣ C

0 1 2 3 4 5 6 7

એટલે length() એ 8 છે (count), પણ last index એ 7 છે (count minus 1). charAt(4) એ 'U' છે. count અને last index ને mix up કરવાથી StringIndexOutOfBoundsException આવે છે જે તમારા batch નો અડધો આ અઠવાડિયે meet કરશે.

At a glance

Inspectors: ask, never change

MethodAnswers"Let Us C" પર
length()કેટલા characters?8
charAt(4)કયો char index 4 પર sits કરે છે?'U'
indexOf("s")આ text નો first index, અથવા -15
lastIndexOf(" ")આ text નો last index, અથવા -16
isEmpty()શું length() == 0?false
equals(s)Same characters? (last lesson)content check

At a glance

Producers: દરેક result એ NEW string છે

MethodProducesExample
trim()leading/trailing spaces વગર Copy" let us c ".trim() → "let us c"
substring(4)index 4 થી end સુધી"Let Us C" → "Us C"
substring(0, 3)Indexes 0,1,2: end EXCLUSIVE"Let Us C" → "Let"
concat(s)This string + s joined"Book".concat("Bridge") → "BookBridge"
split(" ")pieces નું String[]"Let Us C" → {"Let","Us","C"}
String.join("-", parts)separator સાથે glued pieces (static)join("-","a","b") → "a-b"

Practical

એક messy entry ને end to end cleaning

public class CleanTitle {
    public static void main(String[] args) {
        String raw = "  let us c  ";

        String t = raw.trim();                 // "let us c"
        System.out.println(t.length());        // 8
        System.out.println(t.isEmpty());       // false
        System.out.println(t.indexOf("us"));   // 4
        System.out.println(t.charAt(0));       // l

        String[] words = t.split(" ");         // {"let","us","c"}
        System.out.println(words.length);      // 3  (field, no brackets!)
        System.out.println(String.join("-", words)); // let-us-c
    }
}

Quiz

"Let Us C".substring(4, 6) શું return કરે છે?

  1. "Us"
  2. "Us "
  3. " Us"
  4. "s C"
Show the answer

"Us"

substring(begin, end) એ indexes begin up to end EXCLUSIVE લે છે: indexes 4 અને 5, characters 'U' અને 's', એટલે "Us". Option B index 6 (space) ને include કરે છે, students માટે classic off-by-one જેઓ end ને inclusive તરીકે read કરે છે. examiners themselves use કરે છે એ quick self-check: result ની length હંમેશા end minus begin છે, અહીં 6 - 4 = 2 characters. જો તમારા answer ની length wrong હોય, indexes ને re-read કરો.

Think first

-1 sentinel

t જ્યારે "let us c" હોય ત્યારે t.indexOf("Python"): ત્યાં ક્યાંય Python નથી. tap કરતા પહેલા: શું પાછું આવે છે, અને શા માટે એ particular value?

Show the answer

-1. એ 0 અથવા કોઈ positive number નથી હોઈ શકતું, કારણ કે એ દરેક real index છે જ્યાં match COULD sit કરી શકે; -1 એ એક integer છે જે ક્યારેય position નથી હોઈ શકતો, એટલે એ safely "not found" નો અર્થ કરે છે. BookBridge માં everywhere working idiom: if (t.indexOf(q) != -1) { found }. check ને forget કરવું અને -1 ને substring અથવા charAt માં index તરીકે use કરવું એ instant runtime exception છે.

Watch out

Three habits જે marks lose કરે છે

length() vs length: String પર તે brackets સાથે method છે, array પર brackets વગર field છે: t.length() પણ words.length. Exams બંને ને એક snippet માં plant કરે છે, exactly આપણી listing જેવું.

Results are new strings ને Forget કરવું: t.trim(); alone કંઈ clean નથી કરતું; assign કરો: t = t.trim();

charAt(t.length()) 8-character string ના index 8 ને asks કરે છે: StringIndexOutOfBoundsException. છેલ્લો character length() - 1 પર lives કરે છે.

Theory

એમને plumbing જેવું compose કરો

methods chain થાય છે, કારણ કે દરેક producer String return કરે છે જે next call માટે ready છે: raw.trim().substring(0, 3).equals("let") clean, slice, test તરીકે reads થાય છે. એ composability છે જે આ 11 most text work ને cover કરે છે જે BookBridge ને ever need થશે. જ્યારે job એક growing text નું heavy repeated EDITING બને છે, ત્યારે new-string producers ને chain કરવું wasteful બને છે, અને એ exactly next lesson ના StringBuffer માટે cue છે.

Summary

Key takeaways

  • Indexes 0 થી start થાય છે; length() characters ને count કરે છે, last index એ length() - 1 છે.
  • Inspectors: length, charAt, indexOf, lastIndexOf, isEmpty, equals.
  • Producers (હંમેશા NEW string): trim, substring, concat, split, અને static String.join.
  • substring(begin, end) end-exclusive છે; result length = end - begin.
  • indexOf/lastIndexOf not found માટે -1 return કરે છે: use કરતા પહેલા check કરો.
  • String length() બ્રેકેટ ધરાવે છે; array length નથી ધરાવતું.
  • Memory hook: inspectors ask કરે છે, producers તમને fresh copy hand કરે છે.

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from Basic Concepts of Strings and Exceptions

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati

String methods (charAt(), concat(), equals(), indexOf(), isEmpty(), join(), lastIndexOf(), length(), split(), substring(), trim()) · Java Programming Language · Gri-Learn