<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Metinsel İşlemler arşivleri - Keşif Ruhu</title>
	<atom:link href="https://www.kesifruhu.com/tag/metinsel-islemler/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.kesifruhu.com/tag/metinsel-islemler/</link>
	<description>Keşfet, Deneyimle, Paylaş</description>
	<lastBuildDate>Sat, 19 Apr 2025 09:44:34 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>

<image>
	<url>https://www.kesifruhu.com/wp-content/uploads/2024/09/siteico-150x150.png</url>
	<title>Metinsel İşlemler arşivleri - Keşif Ruhu</title>
	<link>https://www.kesifruhu.com/tag/metinsel-islemler/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>10. String İşlemleri ve StringBuilder Kullanımı</title>
		<link>https://www.kesifruhu.com/yazilim/10-string-islemleri-ve-stringbuilder-kullanimi/</link>
					<comments>https://www.kesifruhu.com/yazilim/10-string-islemleri-ve-stringbuilder-kullanimi/#respond</comments>
		
		<dc:creator><![CDATA[darklaz]]></dc:creator>
		<pubDate>Sat, 05 Apr 2025 20:21:41 +0000</pubDate>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Yazılım]]></category>
		<category><![CDATA[Metinsel İşlemler]]></category>
		<category><![CDATA[Programlama]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[StringBuilder]]></category>
		<guid isPermaLink="false">https://www.kesifruhu.com/?p=481</guid>

					<description><![CDATA[<p>10. String İşlemleri ve StringBuilder Kullanımı Java programlama dilinde String sınıfı, metinsel verileri temsil etmek için kullanılır. String&#8217;ler, karakter dizilerini ifade eder ve Java&#8217;da sıklıkla <a class="mh-excerpt-more" href="https://www.kesifruhu.com/yazilim/10-string-islemleri-ve-stringbuilder-kullanimi/" title="10. String İşlemleri ve StringBuilder Kullanımı">[...]</a></p>
<p><a href="https://www.kesifruhu.com/yazilim/10-string-islemleri-ve-stringbuilder-kullanimi/">10. String İşlemleri ve StringBuilder Kullanımı</a> yazısı ilk önce <a href="https://www.kesifruhu.com">Keşif Ruhu</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image"><img decoding="async" src="https://images.pexels.com/photos/4164418/pexels-photo-4164418.jpeg?auto=compress&amp;cs=tinysrgb&amp;fit=crop&amp;h=627&amp;w=1200" alt="image text"/></figure>



<p></p>



<h1 class="wp-block-heading">10. String İşlemleri ve StringBuilder Kullanımı</h1>



<p>Java programlama dilinde <em>String</em> sınıfı, metinsel verileri temsil etmek için kullanılır. String&#8217;ler, karakter dizilerini ifade eder ve Java&#8217;da sıklıkla kullanılan temel veri tiplerindendir. Ancak, String&#8217;lerin değiştirilemez (<em>immutable</em>) yapısı, bazı durumlarda performans sorunlarına yol açabilir. Bu nedenle, metinsel veriler üzerinde sık sık değişiklik yapılması gereken durumlarda <em>StringBuilder</em> sınıfı daha uygun bir alternatif sunar.</p>



<h2 class="wp-block-heading">String Sınıfı ve Temel İşlemler</h2>



<p>String sınıfı, metinsel verilerle çalışmak için çeşitli yöntemler sunar. İşte en sık kullanılan String metotlarından bazıları:</p>



<ul class="wp-block-list">
<li><strong>length():</strong> String&#8217;in uzunluğunu (karakter sayısını) döndürür.</li>



<li><strong>charAt(int index):</strong> Belirtilen index&#8217;teki karakteri döndürür.</li>



<li><strong>substring(int beginIndex, int endIndex):</strong> Belirtilen aralıktaki alt dizeyi (substring) döndürür.</li>



<li><strong>equals(Object obj):</strong> İki String&#8217;in içeriğinin eşit olup olmadığını kontrol eder (büyük/küçük harf duyarlı).</li>



<li><strong>equalsIgnoreCase(String anotherString):</strong> İki String&#8217;in içeriğinin eşit olup olmadığını kontrol eder (büyük/küçük harf duyarsız).</li>



<li><strong>concat(String str):</strong> String&#8217;in sonuna başka bir String ekler.</li>



<li><strong>indexOf(String str):</strong> Belirtilen alt dizenin ilk geçtiği index&#8217;i döndürür.</li>



<li><strong>lastIndexOf(String str):</strong> Belirtilen alt dizenin son geçtiği index&#8217;i döndürür.</li>



<li><strong>replace(char oldChar, char newChar):</strong> Belirtilen karakteri başka bir karakterle değiştirir.</li>



<li><strong>toUpperCase():</strong> String&#8217;i büyük harflere dönüştürür.</li>



<li><strong>toLowerCase():</strong> String&#8217;i küçük harflere dönüştürür.</li>



<li><strong>trim():</strong> String&#8217;in başındaki ve sonundaki boşlukları temizler.</li>



<li><strong>split(String regex):</strong> String&#8217;i belirtilen ayıraca göre parçalara ayırır ve bir String dizisi döndürür.</li>
</ul>



<p><strong>Örnek:</strong></p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
String str = &quot;Merhaba Dünya!&quot;;
int uzunluk = str.length(); // uzunluk = 14
char ilkKarakter = str.charAt(0); // ilkKarakter = 'M'
String altDize = str.substring(0, 7); // altDize = &quot;Merhaba&quot;
boolean esitMi = str.equals(&quot;Merhaba Dünya!&quot;); // esitMi = true
String buyukHarf = str.toUpperCase(); // buyukHarf = &quot;MERHABA DÜNYA!&quot;
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;Merhaba Dünya!&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #4EC9B0">int</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">uzunluk</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">length</span><span style="color: #D4D4D4">(); </span><span style="color: #6A9955">// uzunluk = 14</span></span>
<span class="line"><span style="color: #4EC9B0">char</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">ilkKarakter</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">charAt</span><span style="color: #D4D4D4">(</span><span style="color: #B5CEA8">0</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// ilkKarakter = &#39;M&#39;</span></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">altDize</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">substring</span><span style="color: #D4D4D4">(</span><span style="color: #B5CEA8">0</span><span style="color: #D4D4D4">, </span><span style="color: #B5CEA8">7</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// altDize = &quot;Merhaba&quot;</span></span>
<span class="line"><span style="color: #4EC9B0">boolean</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">esitMi</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">equals</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Merhaba Dünya!&quot;</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// esitMi = true</span></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">buyukHarf</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">toUpperCase</span><span style="color: #D4D4D4">(); </span><span style="color: #6A9955">// buyukHarf = &quot;MERHABA DÜNYA!&quot;</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<h2 class="wp-block-heading">String&#8217;lerin Değişmez (Immutable) Yapısı</h2>



<p>Java&#8217;da String nesneleri <em>değişmezdir</em>. Bu, bir String nesnesi oluşturulduktan sonra içeriğinin değiştirilemeyeceği anlamına gelir. String üzerinde herhangi bir değişiklik yapıldığında (örneğin, concat veya replace metotları kullanıldığında), aslında yeni bir String nesnesi oluşturulur ve eski nesne değişmeden kalır. Bu durum, özellikle sık sık String manipülasyonu yapılan durumlarda performans sorunlarına yol açabilir, çünkü her değişiklikte yeni bir nesne oluşturulması bellek tüketimini artırır ve işlem süresini uzatır.</p>



<p><strong>Örnek:</strong></p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
String str = &quot;Merhaba&quot;;
str = str.concat(&quot; Dünya!&quot;); // Yeni bir String nesnesi oluşturulur
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;Merhaba&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">str = </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">concat</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot; Dünya!&quot;</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// Yeni bir String nesnesi oluşturulur</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<h2 class="wp-block-heading">StringBuilder Sınıfı ve Avantajları</h2>



<p><em>StringBuilder</em> sınıfı, String&#8217;lerin aksine <em>değiştirilebilir</em> (mutable) bir yapıya sahiptir. Bu, StringBuilder nesnesi üzerinde yapılan değişikliklerin, nesnenin kendisi üzerinde gerçekleştirildiği anlamına gelir. Bu özellik, özellikle çok sayıda String manipülasyonu gerektiren durumlarda performansı önemli ölçüde artırır.</p>



<figure class="wp-block-image"><img decoding="async" src="image-placeholder.jpg" alt="Java StringBuilder Example"/></figure>



<p></p>



<h3 class="wp-block-heading">StringBuilder Metotları</h3>



<p>StringBuilder sınıfı, String&#8217;e benzer metotlar sunarken, aynı zamanda String&#8217;in değiştirilebilir yapısından kaynaklanan avantajları da beraberinde getirir. İşte en sık kullanılan StringBuilder metotlarından bazıları:</p>



<ul class="wp-block-list">
<li><strong>append(String str):</strong> StringBuilder&#8217;in sonuna belirtilen String&#8217;i ekler.</li>



<li><strong>insert(int offset, String str):</strong> Belirtilen index&#8217;e String ekler.</li>



<li><strong>delete(int start, int end):</strong> Belirtilen aralıktaki karakterleri siler.</li>



<li><strong>deleteCharAt(int index):</strong> Belirtilen index&#8217;teki karakteri siler.</li>



<li><strong>replace(int start, int end, String str):</strong> Belirtilen aralıktaki karakterleri başka bir String ile değiştirir.</li>



<li><strong>reverse():</strong> StringBuilder&#8217;in içeriğini tersine çevirir.</li>



<li><strong>length():</strong> StringBuilder&#8217;in uzunluğunu döndürür.</li>



<li><strong>capacity():</strong> StringBuilder&#8217;in mevcut kapasitesini (bellekte ayrılan alan) döndürür.</li>



<li><strong>toString():</strong> StringBuilder&#8217;in içeriğini String olarak döndürür.</li>
</ul>



<p><strong>Örnek:</strong></p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
StringBuilder sb = new StringBuilder(&quot;Merhaba&quot;);
sb.append(&quot; Dünya!&quot;); // sb = &quot;Merhaba Dünya!&quot;
sb.insert(7, &quot;, &quot;); // sb = &quot;Merhaba, Dünya!&quot;
sb.delete(7, 9); // sb = &quot;Merhaba Dünya!&quot;
sb.reverse(); // sb = &quot;!aynüD abahreM&quot;
String str = sb.toString(); // str = &quot;!aynüD abahreM&quot;
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #4EC9B0">StringBuilder</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4"> = </span><span style="color: #C586C0">new</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">StringBuilder</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Merhaba&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">append</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot; Dünya!&quot;</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// sb = &quot;Merhaba Dünya!&quot;</span></span>
<span class="line"><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">insert</span><span style="color: #D4D4D4">(</span><span style="color: #B5CEA8">7</span><span style="color: #D4D4D4">, </span><span style="color: #CE9178">&quot;, &quot;</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// sb = &quot;Merhaba, Dünya!&quot;</span></span>
<span class="line"><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">delete</span><span style="color: #D4D4D4">(</span><span style="color: #B5CEA8">7</span><span style="color: #D4D4D4">, </span><span style="color: #B5CEA8">9</span><span style="color: #D4D4D4">); </span><span style="color: #6A9955">// sb = &quot;Merhaba Dünya!&quot;</span></span>
<span class="line"><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">reverse</span><span style="color: #D4D4D4">(); </span><span style="color: #6A9955">// sb = &quot;!aynüD abahreM&quot;</span></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">toString</span><span style="color: #D4D4D4">(); </span><span style="color: #6A9955">// str = &quot;!aynüD abahreM&quot;</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<h2 class="wp-block-heading">String ve StringBuilder Arasındaki Farklar ve Ne Zaman Hangisini Kullanmalı?</h2>



<p>String ve StringBuilder arasındaki temel fark, <em>değiştirilebilirlik</em> özelliğidir. String&#8217;ler değiştirilemezken, StringBuilder&#8217;lar değiştirilebilir. Bu fark, performans açısından önemli sonuçlar doğurur.</p>



<ul class="wp-block-list">
<li><strong>String:</strong> Sabit metinsel verilerle çalışırken veya metinsel veriler üzerinde nadiren değişiklik yapılması gereken durumlarda tercih edilmelidir. Ayrıca, çoklu iş parçacığı (multi-threading) ortamlarında String&#8217;lerin değişmez yapısı, veri güvenliğini sağlamak açısından avantajlıdır.</li>



<li><strong>StringBuilder:</strong> Metinsel veriler üzerinde sık sık değişiklik yapılması gereken durumlarda (örneğin, döngüler içinde String birleştirme işlemleri) StringBuilder kullanmak, performansı önemli ölçüde artırır.</li>
</ul>



<p><strong>Örnek Senaryo:</strong></p>



<p>Döngü içinde String birleştirme işlemi:</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
// Kötü Örnek (String ile)
String str = &quot;&quot;;
for (int i = 0; i &lt; 10000; i++) {
    str = str + i; // Her döngüde yeni bir String nesnesi oluşturulur
}

// İyi Örnek (StringBuilder ile)
StringBuilder sb = new StringBuilder();
for (int i = 0; i &lt; 10000; i++) {
    sb.append(i); // Aynı StringBuilder nesnesi üzerinde değişiklik yapılır
}
String str = sb.toString();
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #6A9955">// Kötü Örnek (String ile)</span></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #C586C0">for</span><span style="color: #D4D4D4"> (</span><span style="color: #4EC9B0">int</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">i</span><span style="color: #D4D4D4"> = </span><span style="color: #B5CEA8">0</span><span style="color: #D4D4D4">; i &lt; </span><span style="color: #B5CEA8">10000</span><span style="color: #D4D4D4">; i++) {</span></span>
<span class="line"><span style="color: #D4D4D4">    str = str + i; </span><span style="color: #6A9955">// Her döngüde yeni bir String nesnesi oluşturulur</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span>
<span class="line"><span style="color: #6A9955">// İyi Örnek (StringBuilder ile)</span></span>
<span class="line"><span style="color: #4EC9B0">StringBuilder</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4"> = </span><span style="color: #C586C0">new</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">StringBuilder</span><span style="color: #D4D4D4">();</span></span>
<span class="line"><span style="color: #C586C0">for</span><span style="color: #D4D4D4"> (</span><span style="color: #4EC9B0">int</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">i</span><span style="color: #D4D4D4"> = </span><span style="color: #B5CEA8">0</span><span style="color: #D4D4D4">; i &lt; </span><span style="color: #B5CEA8">10000</span><span style="color: #D4D4D4">; i++) {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">append</span><span style="color: #D4D4D4">(i); </span><span style="color: #6A9955">// Aynı StringBuilder nesnesi üzerinde değişiklik yapılır</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">str</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">sb</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">toString</span><span style="color: #D4D4D4">();</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<h2 class="wp-block-heading">Sonuç</h2>



<p>Java&#8217;da String ve StringBuilder sınıfları, metinsel verilerle çalışmak için farklı araçlar sunar. String&#8217;lerin değişmez yapısı, basit ve güvenli bir kullanım sağlarken, StringBuilder&#8217;ın değiştirilebilir yapısı, performans gerektiren durumlarda önemli avantajlar sunar. Hangi sınıfın kullanılacağına karar verirken, uygulamanın ihtiyaçları ve performans gereksinimleri göz önünde bulundurulmalıdır.</p>



<p>Özetle, String işlemleri ve StringBuilder kullanımı, Java programlama dilinde metinsel verilerle çalışırken bilinmesi gereken temel konulardandır. Bu bilgileri doğru kullanarak, daha verimli ve performanslı uygulamalar geliştirebilirsiniz.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>&#8220;String&#8217;lerin değişmez yapısı, güvenli ve öngörülebilir bir programlama ortamı sağlarken, StringBuilder&#8217;ın değiştirilebilir yapısı, performans gerektiren metinsel manipülasyonlarda hayati bir rol oynar.&#8221; &#8211; Java Uzmanı</p>
</blockquote>
<p><a href="https://www.kesifruhu.com/yazilim/10-string-islemleri-ve-stringbuilder-kullanimi/">10. String İşlemleri ve StringBuilder Kullanımı</a> yazısı ilk önce <a href="https://www.kesifruhu.com">Keşif Ruhu</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.kesifruhu.com/yazilim/10-string-islemleri-ve-stringbuilder-kullanimi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
