Altbilgi içeriğine atla
JAVA YARDıM

Java'da Substring Nasıl Kullanılır

Java alt dize metodu kullanımına yönelik yeni başlayanlar için hazırlanan bu kılavuza hoş geldiniz. Bir Java geliştiricisi ve eğitimcisi olarak, Java'da dizelerin parçalarıyla verimli bir şekilde nasıl çalışacağınızı kavramanızı sağlamayı hedefliyorum. Dizeler veya karakter dizileri, Java programlamasında temeldir. substring metodu, boş bir dize ile çalışırken benzersiz davranır. Eğer orijinal dize boşsa ve herhangi bir indeks belirtilmemişse, metot boş bir dize döndürür. Bu kılavuz, Java'da alt dizeler ile başlamanız için bilmeniz gereken her şeyi, IronPDF Java Kütüphanesi ile PDF üretimi ve manipülasyonu için hazırlanmış pratik örneklerle açıklayacaktır.

Java'da Bir String Nedir?

Alt dizelere dalmadan önce, Java programlaması bağlamında bir dizenin ne olduğunu anlamak önemlidir. Java'da bir dize, bir karakter dizisini temsil eden bir nesnedir. Java'daki String sınıfı, iki dizeyi birleştirmek, dizeleri karşılaştırmak veya burada odaklanacağımız gibi bir alt diziyi çıkarmak gibi bu karakter dizisini manipüle etmek için çeşitli metodlar sağlar.

Substring Metodu Açıklandı

Java dize alt dize metodu, Java'da String sınıfının bir parçasıdır. Mevcut bir dizenin bir kısmından yeni bir dize oluşturmak için tasarlanmıştır. Java, bunu yapmak için iki ana yöntem sunar:

  • public String substring(int beginIndex): Bu metot, orijinal dizenin sonuna kadar beginIndex'ten başlayarak yeni bir dize oluşturur. Java'da dize indeksinin 0'dan başladığını belirtmek önemlidir.
  • public String substring(int beginIndex, int endIndex): Bu versiyon, beginIndex'ten başlayarak yeni bir dize oluşturur ve endIndex'i içermez.

Substring ile Yeni Dize Nesneleri Oluşturma

Alt dize metodunu kullandığınızda, Java orijinal dizenizi değiştirmez. Bunun yerine, orijinal dizenin belirtilen indeks aralığından karakterler içeren yeni bir dize nesnesi oluşturur.

Pratik Örnek: Alt Dizeleri Çıkartma

Bir basit Java programı ile teoriyi pratiğe dökelim:

public class SubstringDemo {
    public static void main(String[] args) {
        String greeting = "Hello, world!";
        // Extracting substring from index 7 to the end
        String world = greeting.substring(7);
        System.out.println(world); // Outputs "world!"

        // Extracting substring from index 0 to 4 (exclusive)
        String hello = greeting.substring(0, 5);
        System.out.println(hello); // Outputs "Hello"
    }
}
public class SubstringDemo {
    public static void main(String[] args) {
        String greeting = "Hello, world!";
        // Extracting substring from index 7 to the end
        String world = greeting.substring(7);
        System.out.println(world); // Outputs "world!"

        // Extracting substring from index 0 to 4 (exclusive)
        String hello = greeting.substring(0, 5);
        System.out.println(hello); // Outputs "Hello"
    }
}
JAVA

Bu örnekte, world indeksten 7. sıradan sona kadar olan alt dizeyi içerecek ve hello indeksten 0'dan 4'e kadar olan alt dizeyi içerecektir. Bu, alt dize metodunun her iki biçimini de bir dizinin farklı bölümlerini çıkarmak için nasıl kullanabileceğinizi göstermektedir.

Java Alt Dizi Yöntemi (Geliştiriciler İçin Nasıl Çalışır): Şekil 1 - Önceki kodun konsol çıktısı

İleri Dize Manipülasyonu

Basit alt dizeleri çıkarmanın ötesinde, alt dize metodu, dizelerin bölümlerini karşılaştırmak, palindromları kontrol etmek veya farklı yerlerde dizeler üzerinde çalışmak gibi daha karmaşık senaryolarda güçlü olabilir.

Dize Bölgelerini Karşılaştırma

Bazen, iki dizenin belirli kısımlarını tüm dizelerin kendisi yerine karşılaştırmanız gerekebilir. Java'nın alt dize metodu, böyle senaryolar için oldukça kullanışlıdır. Bunu nasıl yapabileceğiniz aşağıda açıklanmıştır:

public class CompareRegionsDemo {
    public static void main(String[] args) {
        String str1 = "Hello, world!";
        String str2 = "Hello, Java!";

        // Extracting substrings to compare
        String subStr1 = str1.substring(7);
        String subStr2 = str2.substring(7);

        // Comparing extracted substrings
        if (subStr1.equals(subStr2)) {
            System.out.println("The substrings match.");
        } else {
            System.out.println("The substrings do not match.");
        }
    }
}
public class CompareRegionsDemo {
    public static void main(String[] args) {
        String str1 = "Hello, world!";
        String str2 = "Hello, Java!";

        // Extracting substrings to compare
        String subStr1 = str1.substring(7);
        String subStr2 = str2.substring(7);

        // Comparing extracted substrings
        if (subStr1.equals(subStr2)) {
            System.out.println("The substrings match.");
        } else {
            System.out.println("The substrings do not match.");
        }
    }
}
JAVA

Bu program iki farklı diziden alt dizeler çıkartır ve bunları karşılaştırır. Bu, sizin ilgilendiğiniz belirli dize bölgelerine odaklanmanın, tüm dizeleri karşılaştırmaktan daha iyi olduğunu göstermektedir.

Java Alt Dizi Yöntemi (Geliştiriciler İçin Nasıl Çalışır): Şekil 2 - Önceki kodun çalıştırıldığında ortaya çıkan konsol çıktısı

Alt Dizeneler ile Yerelleştirme

Uluslararasılaşma ile ilgili çalışılırken, kullanıcıların yerel ayarlarına bağlı olarak dizeleri farklı şekilde sunmanız veya manipüle etmeniz gerekebilir. İşte, önceden tanımlanmış bir formata dayalı olarak bir dizeyi alt dize kullanarak nasıl biçimlendireceğinize dair basit bir örnek.

public class LocalizationDemo {
    public static void main(String[] args) {
        String greeting = "Hello, world! Bonjour, monde! Hola, mundo!";

        // Assuming we know the positions of each localized greeting
        String englishGreeting = greeting.substring(0, 13);
        String frenchGreeting = greeting.substring(15, 28);
        String spanishGreeting = greeting.substring(30);

        System.out.println(englishGreeting); // Outputs "Hello, world!"
        System.out.println(frenchGreeting);  // Outputs "Bonjour, monde!"
        System.out.println(spanishGreeting);  // Outputs "Hola, mundo!"
    }
}
public class LocalizationDemo {
    public static void main(String[] args) {
        String greeting = "Hello, world! Bonjour, monde! Hola, mundo!";

        // Assuming we know the positions of each localized greeting
        String englishGreeting = greeting.substring(0, 13);
        String frenchGreeting = greeting.substring(15, 28);
        String spanishGreeting = greeting.substring(30);

        System.out.println(englishGreeting); // Outputs "Hello, world!"
        System.out.println(frenchGreeting);  // Outputs "Bonjour, monde!"
        System.out.println(spanishGreeting);  // Outputs "Hola, mundo!"
    }
}
JAVA

Bu örnek, önceden tanımlanmış bir formata dayalı olarak belirli selamlamaları çıkarmayı gösteriyor ve kullanıcının belirlediği yerel ayara dayalı bir selamlamayı seçmek için adapte edilebilir.

Java Alt Dizi Yöntemi (Geliştiriciler İçin Nasıl Çalışır): Şekil 3 - Önceki kod örneğinden konsol çıktısı

Palindromları Kontrol Etme

Bir palindrom, bir kelime, cümle veya sayı gibi öne ve arkaya doğru aynı şekilde okunan, boşluklar, noktalamalar ve büyük/küçük harf dikkate alınmadan, bir karakter dizisidir. İşte verilen bir dizenin palindrom olup olmadığını kontrol etmek için alt dize metodunu nasıl kullanabileceğiniz:

public class PalindromeCheck {
    public static void main(String[] args) {
        String line = "A man a plan a canal Panama";
        System.out.println("Is palindrome? " + checkPalindrome(line));
    }

    private static boolean checkPalindrome(String str) {
        // Removing all non-letter characters and converting to lowercase
        str = str.replaceAll("[^a-zA-Z]", "").toLowerCase();
        int length = str.length();

        // Checking if characters at each index are equal to their counterparts
        for (int i = 0; i < length / 2; i++) {
            if (str.charAt(i) != str.charAt(length - 1 - i)) {
                return false;
            }
        }
        return true;
    }
}
public class PalindromeCheck {
    public static void main(String[] args) {
        String line = "A man a plan a canal Panama";
        System.out.println("Is palindrome? " + checkPalindrome(line));
    }

    private static boolean checkPalindrome(String str) {
        // Removing all non-letter characters and converting to lowercase
        str = str.replaceAll("[^a-zA-Z]", "").toLowerCase();
        int length = str.length();

        // Checking if characters at each index are equal to their counterparts
        for (int i = 0; i < length / 2; i++) {
            if (str.charAt(i) != str.charAt(length - 1 - i)) {
                return false;
            }
        }
        return true;
    }
}
JAVA

Bu kod, harf olmayan karakterleri kaldırarak ve küçük harfe dönüştürerek giriş dizisini temizler. Sonra, başlangıçtan her pozisyondaki karakterin sonundan gelen karşılık gelen karakterle eşleşip eşleşmediğini kontrol eder.

Java Alt Dizi Yöntemi (Geliştiriciler İçin Nasıl Çalışır): Şekil 4 - Önceki kodun konsol çıktısı

Java İçin IronPDF Tanıtımı

Java Alt Dizi Yöntemi (Geliştiriciler İçin Nasıl Çalışır): Şekil 5 - IronPDF for Java web sayfası

IronPDF Java Özelliklerini Keşfedin - Java uygulamaları içinde PDF belgeleri oluşturma, düzenleme ve yönetme sürecini basitleştirmek için tasarlanmış güçlü bir kütüphane. Bu kütüphane geliştiricilere, HTML'den PDF belgeler oluşturma, form işleme, resim ve metin ekleme, belgeleri şifreleme ve izinlerle güvenli hale getirme gibi PDF dosyalarını manipüle etmek için kapsamlı bir özellik seti sunar. Sezgisel API'si ve kapsamlı dokümantasyonu ile hem başlangıç seviyesindekilerin hem de deneyimli geliştiricilerin Java projelerine PDF işlevselliği entegre etmeleri kolay hale gelir.

Bir PDF Belgesi Oluşturma

Java'nın alt dize kavramı ile birlikte Java için IronPDF kullanımını gösteren basit bir örnek oluşturalım. Bu örnekte, bir HTML dizisinden bir PDF belgesi oluşturacağız. Ardından, Java'nın alt dize özelliklerini entegre etme örneği olarak daha büyük bir dizenin alt dizisini kullanarak PDF'ye bir metin elemanı ekleyeceğiz.

Projenize IronPDF for Java Ekleme

pom.xml dosyanıza IronPDF for Java'yı ekleyeceksiniz. IronPDF for Java ve Slf4j bağımlılığını eklemek zorundasınız. Bunu nasıl çok kolay bir şekilde yapabileceğiniz aşağıda.

<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>ironpdf</artifactId>
   <version>2024.1.1</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.3</version>
</dependency>
<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>ironpdf</artifactId>
   <version>2024.1.1</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.3</version>
</dependency>
XML

Ancak, IronPDF for Java'yı Sonatype deposundan manuel olarak indirebilirsiniz.

Alt Dize Metodunu Kullanarak PDF Oluşturma

Şimdi App.java dosyasına kod yazma zamanı. Basit bir PDF belgesi oluşturalım ve bu süreç içinde alt dize metotlarını nasıl entegre edebileceğimize ilişkin bir gösterim olarak metin ekleyelim:

import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
import java.awt.print.PrinterException;

public class App {
    public static void main(String[] args) throws IOException {
        License.setLicenseKey("License Key");

        // Example longer string to demonstrate substring usage
        String longString = "IronPDF for Java simplifies PDF generation from HTML content.";
        // Extracting a substring
        String substring = longString.substring(0, 25); // "IronPDF for Java simplifies"

        // Crafting HTML content with the substring
        String htmlContent = "<h1>" + substring + "</h1>" +
                "<p>This PDF document demonstrates generating a PDF from HTML content, including dynamic text from Java strings.</p>";

        // Render HTML as a PDF document
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlContent);
        pdf.saveAs(Paths.get("f:\\IronPdf\\html.pdf"));
    }
}
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
import java.awt.print.PrinterException;

public class App {
    public static void main(String[] args) throws IOException {
        License.setLicenseKey("License Key");

        // Example longer string to demonstrate substring usage
        String longString = "IronPDF for Java simplifies PDF generation from HTML content.";
        // Extracting a substring
        String substring = longString.substring(0, 25); // "IronPDF for Java simplifies"

        // Crafting HTML content with the substring
        String htmlContent = "<h1>" + substring + "</h1>" +
                "<p>This PDF document demonstrates generating a PDF from HTML content, including dynamic text from Java strings.</p>";

        // Render HTML as a PDF document
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlContent);
        pdf.saveAs(Paths.get("f:\\IronPdf\\html.pdf"));
    }
}
JAVA

Daha uzun bir diziden bir alt dize çıkardıktan sonra, bunu oluşturulan PDF içeriği içinde tutarlı bir dize temsili sağlayarak PDF belgesine sorunsuz bir şekilde dahil edebilirsiniz. Bu kod parçası, IronPDF for Java ile PDF belgesi oluşturmanın temellerini gösterir, HTML'den içerik üretmek ve Java'nın alt dize işlevselliğini PDF'ye metin manipüle etmek ve eklemek için nasıl dahil edeceğinizi gösterir. Bu kodu çalıştırdıktan sonra belirttiğiniz dizinde "html.pdf" adlı bir PDF'ye sahip olacaksınız.

Çıktı

Yukarıdaki kod ile oluşturulan PDF şöyledir:

Java Alt Dizi Yöntemi (Geliştiriciler İçin Nasıl Çalışır): Şekil 6 - Önceki koddan çıkartılmış PDF

Tam olarak kodumuzda tanımladığımız gibidir. Java'nın Alt Dize metodunu kullanarak PDF'ye içerik ekledik. Bu, IronPDF ve Alt Dize metodunun güzel bir kombinasyonudur. Bu kombinasyonu kullanarak çok şey yapabilirsiniz.

Sonuç

Bu Java IronPDF Özelliklerini Java'nın güçlü dize manipülasyon yetenekleriyle, örneğin alt dize metoduyla entegre ederek sofistike PDF işleme uygulamaları oluşturabilirsiniz. Bu kılavuz, Java'da PDF'lerle çalışma hakkında temel bir anlayış sağladı ve PDF projelerinize alt dize manipülasyonlarını nasıl dahil edebileceğinizi gösterdi. Bu örneklerle deney yapın ve Java'da PDF manipülasyonunun tüm potansiyelini açığa çıkarmak için daha fazla keşfedin.

IronPDF for Java, geliştiricilere yeteneklerini keşfetmeleri için bir ücretsiz deneme sunar. IronPDF için lisanslar $999'dan başlar ve Java projeleri için kapsamlı PDF oluşturma çözümleri sağlar.

Darrius Serrant
Tam Yığın Yazılım Mühendisi (WebOps)

Darrius Serrant, Miami Üniversitesi'nden Bilgisayar Bilimi alanında Lisans Derecesine sahip ve Iron Software'de Tam Yığın WebOps Pazarlama Mühendisi olarak çalışıyor. Genç yaşlardan itibaren kodlamaya çekildi, bilgisayar bilimi hem gizemli hem de erişilebilir olarak görüldü ve bu özellik, yaratıcılık ...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara