Porozumění zřetězení řetězců v Javě

Zřetězení v Jáva programovací jazyk je operace spojující dva řetězce dohromady. Řetězce můžete spojit pomocí přidání (+) operátor nebo řetězec concat () metoda.

Pomocí operátoru +

Za použití + operátor je nejčastější způsob, jak spojit dva řetězce v Javě. Můžete zadat proměnnou, číslo nebo a String doslovný (který je vždy obklopen dvojitými uvozovkami).

Chcete-li například zkombinovat řetězce „Já jsem“ a „student“, napište:

„Jsem„ + “student

Nezapomeňte přidat mezeru, aby při tisku kombinovaného řetězce byla jeho slova správně oddělena. Všimněte si výše, že například „student“ začíná mezerou.

Kombinace více řetězců

Jakékoli číslo + operandy mohou být spojeny dohromady, například:

"Jsem student" + "student" + "! A ty taky."

Použití operátora + v prohlášení o tisku

Často, + operátor je použit v tiskovém výpisu. Můžete napsat něco jako:

System.out.println ("pan" + "handle");

To by tisklo:

žebrat na ulici

Kombinace řetězců napříč několika linkami

Java zakazuje doslovné řetězce překlenovat více než řádek. Za použití + operátor tomu brání:

Řetězcová nabídka =
„Nic na celém světě není nebezpečnější než“ +
"upřímná nevědomost a svědomitá hloupost.";

Kombinace směsi objektů

Operátor "+" normálně funguje jako aritmetický operátor, pokud jeden z jeho operandů není String. Pokud ano, převede druhý operand na String před připojením druhého operandu na konec prvního operandu.

Například v níže uvedeném příkladu stáří je celé číslo, takže + operátor jej nejprve převede na řetězec a poté zkombinuje oba řetězce. (Operátor to dělá za scénami voláním jeho toString () metoda; neuvidíte, že k tomu dojde.)

int věk = 12;
System.out.println („Můj věk je“ + věk);

To by tisklo:

Můj věk je 12 let

Pomocí metody Concat

Třída String má metodu concat () který provádí stejnou operaci. Tato metoda působí na první řetězec a poté vezme řetězec jako parametr:

public String concat (String str) 

Například:

String myString = "Rozhodl jsem se držet s láskou .;
myString = myString.concat („Nenávist je příliš velká břemeno.“);
System.out.println (myString);

To by tisklo:

Rozhodl jsem se držet s láskou. Nenávist je příliš velká břemeno.

Rozdíly mezi operátorem + a metodou Concat

Možná vás zajímá, kdy má smysl použít operátor + k zřetězení a kdy byste měli použít concat () metoda. Zde jsou některé rozdíly mezi těmito dvěma:

  • concat () metoda může kombinovat pouze objekty String - musí být vyvolána na objektu String a jeho parametr musí být objekt String. Díky tomu je přísnější než + operátor, protože operátor tiše převede jakýkoli argument bez řetězce na řetězec.
  • concat () metoda vyvolá NullPointerException, pokud má objekt nulovou referenci, zatímco + operátor pojednává nulovou referenci jako řetězec „null“.
  • concat ()) metoda je schopna kombinovat pouze dva řetězce - nemůže brát více argumentů. + operátor může kombinovat libovolný počet řetězců.

Z těchto důvodů + operátor se častěji používá ke kombinaci řetězců. Pokud však vyvíjíte rozsáhlou aplikaci, může se výkon mezi nimi lišit, protože o způsobu, jakým Java zpracovává převod řetězců, proto si uvědomte kontext, ve kterém kombinujete řetězce.