0Pricing
Java Academy · Ders

Girdiden Sayıları Ayrıştırma

Metni sayılara dönüştürün.

Girdiden Sayıları Ayrıştırma, CoddyKit'te ücretsiz bir Java Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Java Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Java Academy kursu toplamda 4 dersten oluşur.

Satırlar Her Zaman Dizelerdir

Kullanıcı 42 yazsa bile readLine() size her zaman bir String verir. Aritmetik işlem yapabilmek için bu metni bir sayıya ayrıştırmanız gerekir.

Java, tam olarak bu amaçla Integer.parseInt ve Double.parseDouble gibi yardımcı yöntemler sağlar.

Integer.parseInt

Integer.parseInt(String), "42" gibi bir metni int türündeki 42 değerine dönüştürür.

Ayrıştırdıktan sonra bu değerle herhangi bir sayıda olduğu gibi toplama, çarpma veya karşılaştırma yapabilirsiniz.

String text = "42";
int n = Integer.parseInt(text);
System.out.println(n + 1);

Çalıştırılabilir Bir Ayrıştırma Örneği

Aşağıda sabit kodlanmış bir dizeyi ayrıştırıp iki katına çıkaran eksiksiz ve çalıştırılabilir bir program verilmiştir.

System.in'den okumadığı için program hemen çalışır ve sonucu yazdırır.

public class Main {
    public static void main(String[] args) {
        String text = "21";
        int n = Integer.parseInt(text);
        System.out.println("Doubled: " + (n * 2));
    }
}

Önce Okuma, Sonra Ayrıştırma

Gerçek kullanılan kalıp şudur: bir satır okuyun, ardından ayrıştırın. Bu program konsoldan bir sayı okur ve karesini yazdırır.

System.in'de beklediği için burada otomatik olarak çalıştırılamaz; ancak günlük kullanımda uygulanan kalıp budur.

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br =
            new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        System.out.println("Square: " + (n * n));
    }
}

Ayrıştırmadan Önce Kırpın

Fazladan boşluklar ayrıştırmayı bozar. Integer.parseInt(" 42 ") bir hata fırlatır; ancak Integer.parseInt(" 42 ".trim()) çalışır.

Ayrıştırmadan önce satır üzerinde trim() çağırmayı alışkanlık hâline getirmeniz iyi olur.

String raw = "  7  ";
int n = Integer.parseInt(raw.trim());
System.out.println(n);

Ondalık Sayıları Ayrıştırma

Ondalık sayılar için Double.parseDouble kullanın. Bu yöntem, "3.14" gibi bir metni double değerine dönüştürür.

Ayrıca int aralığını aşan çok büyük tam sayılar için Long.parseLong da vardır.

public class Main {
    public static void main(String[] args) {
        double pi = Double.parseDouble("3.14");
        System.out.println(pi * 2);
    }
}

Tek Satırda Birden Çok Sayı

Çoğu zaman bir satırda "10 20 30" gibi boşluklarla ayrılmış birkaç sayı bulunur. Satırı split(" ") kullanarak bir String öge dizisine ayırın.

Ardından her ögeyi ayrı ayrı ayrıştırın.

String[] parts = "10 20 30".split(" ");
int a = Integer.parseInt(parts[0]);
int b = Integer.parseInt(parts[1]);
System.out.println(a + b);

Ayrılmış Sayıları Toplama

Bu çalıştırılabilir program bir satırı ayırır ve döngü içinde tüm sayıları toplar.

Dize, programın girdi olmadan çalışabilmesi için sabit kodlanmıştır; gerçek konsol kullanımı için br.readLine() ile değiştirin.

public class Main {
    public static void main(String[] args) {
        String line = "5 8 2 10";
        String[] parts = line.split(" ");
        int sum = 0;
        for (String p : parts) {
            sum += Integer.parseInt(p);
        }
        System.out.println("Sum: " + sum);
    }
}

Geçersiz Girdi Hata Fırlatır

Metin "hello" veya boş bir dize gibi geçerli bir sayı değilse parseInt, NumberFormatException fırlatır.

Programınızın hatalı girdi nedeniyle çökmesini önlemek için bunu try/catch ile güvenli biçimde ele alabilirsiniz.

try {
    int n = Integer.parseInt("hello");
} catch (NumberFormatException e) {
    System.out.println("Not a number!");
}

Güvenli Ayrıştırma Uygulaması

Aşağıda, çökmek yerine hatalı girdiyi düzgün biçimde ele alan çalıştırılabilir bir program verilmiştir.

Metin bir sayıya dönüştürülemediğinde catch bloğu anlaşılır bir ileti yazdırır.

public class Main {
    public static void main(String[] args) {
        String input = "12x";
        try {
            int n = Integer.parseInt(input);
            System.out.println(n);
        } catch (NumberFormatException e) {
            System.out.println("Invalid number: " + input);
        }
    }
}

Ayrıştırma Kontrol Listesi

Girdiyi sayılara dönüştürürken:

  • Tam sayılar için Integer.parseInt, ondalık sayılar için Double.parseDouble kullanın.
  • Önce fazladan boşlukları trim() ile temizleyin.
  • Bir satırdaki birden çok sayı için split(" ") kullanın.
  • Güvenlik için işlemi try/catch içine alın.

Hızlı Kontrol

Ayrıştırma başarısız olduğunda ne olduğunu düşünün.

Özet

Girdi satırlarının, Integer.parseInt veya Double.parseDouble ile ayrıştırılan dizeler olduğunu öğrendiniz. trim() ve split(" ") kullandınız ve güvenlik amacıyla NumberFormatException yakaladınız.

Sıradaki konu: akışlarınızı doğru şekilde kapatmak.

Sıkça Sorulan Sorular

“Girdiden Sayıları Ayrıştırma” dersi ücretsiz mi?

Evet — “Girdiden Sayıları Ayrıştırma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Java Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Java Academy kursu toplamda 4 dersten oluşur.

“Girdiden Sayıları Ayrıştırma” dersinde ne öğreneceğim?

Metni sayılara dönüştürün. Java Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Java Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Java Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Girdiden Sayıları Ayrıştırma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Java Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Java Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. BufferedReader Neden Kullanılır
  2. Satırları Okuma
  3. Girdiden Sayıları Ayrıştırma
  4. Akışları Güvenle Kapatma
← Java Academy Sayfasına Dön