Yükleniyor...

Java'da harf sayısı

plant.length(), plant'in çoktan tuttuğu harfleri sayar. String plant = "leaf"; hâlâ leaf tutar ve System.out.println(plant.length()) 4 yazar. Harfler leaf kalır. Sayıya dönmezler. Addan sonraki nokta sorudur ve yazma satırı yanıtı gösterir.

Nokta kaç harf olduğunu sorar

Mint.java dosyasını açın. Dosya adı Mint.java olarak kalır, çünkü public class Mint hâlâ dosyanın adıdır. Bu sayfa dosyanın adını değiştirmez ve public class Mint satırını da değiştirmez. Önceki sayfa String plant = "leaf"; tutuyordu ve leaf gösteren bir yazma satırı vardı. Bu sayfa o tutma satırını tutar. Tırnak sayfasından önceki int satırı hâlâ oradaysa silin. Her import satırını, her reader satırını ve her nextLine satırını silin. Tuttuğunuz dosyada import yoktur, Scanner yoktur ve nextLine yoktur. Kullanılmayan bir import tek başına javac'ı başarısız etmez ve sayıyı da yazmaz. Sayıyı yalnızca soruyu soran yazma satırı yazar.

main içinde tutma satırı hâlâ String plant = "leaf"; olur. String tür sözcüğüdür. plant addır ve küçük p ile başlar. Tırnak l, e, a, f tutar, hepsi küçük, aralarında başka bir şey yoktur. Bu satır harfleri tutar. Soru sormaz ve ekranı yazmaz. Soru, harfler tutulduktan sonraki iştir. Addan sonra bir nokta yazın, sonra soru sözcüğü length, sonra içi boş bir parantez çifti. Sorunun tamamı plant.length() olur. Nokta soruyu ada bağlar. length, sayı için soru sözcüğüdür. Boş parantezler, bu sorunun içinde fazladan bir sözcük istemediğini söyler. Burada yer numarası yoktur. Tuttuğunuz dosyada bu soru ikinci yazma satırının içindedir. Ayrı bir satır değildir. Sormak tutmak değildir. Adın harfleri leaf kalır. Soru tırnağı kaldırmaz ve 4 sayısını plant adının içine koymaz.

Tuttuğunuz dosya önce harfleri yazar, sonra soruyu sorar. İlk yazma satırı çıplak addır: System.out.println(plant);. Tırnak yoktur ve nokta yoktur. leaf yazar ve satırı bitirir, önceki sayfadaki gibi. İkinci yazma satırı sorudur: System.out.println(plant.length());. length çevresinde tırnak yoktur. Java plant adını okur, bu adın tuttuğu harfleri sayar, o sayıyı yazar ve satırı bitirir. Tuttuğunuz dosya için sayı 4'tür. Tırnak ekranda yoktur. length sözcüğü ekranda yoktur. Parantezler ekranda yoktur. Adın kendi harfleri, p, l, a, n, t, ekranda yoktur. Dosyayı kaydedin.

Tuttuğunuz dosya

Bunu Mint.java olarak kaydedin. Bu sayfanın tuttuğu dosya budur. Bir tutma satırı, String plant = "leaf";. Harfler için bir yazma satırı. Sayı için bir yazma satırı. Sayı satırı, println içinde plant.length() olur. Başka bir şey yoktur.

tuttuğunuz dosya

java
public class Mint {
    public static void main(String[] args) {
        String plant = "leaf";
        System.out.println(plant);
        System.out.println(plant.length());
    }
}

Yukarıdan okuyun. public class Mint dosyayı adlandırır. Ekranı yazmaz. public static void main(String[] args), Java'nın başladığı yerdir. O main satırındaki String sözcüğü hâlâ tutma satırı değildir. Tutma satırı sonrakidir, String plant = "leaf";. Dört harf tutar. Bir şey yazmaz. System.out.println(plant); leaf yazar ve satırı bitirir. System.out.println(plant.length()); 4 yazar ve satırı bitirir. Ekranda iki satır. İlk satır harflerdir. İkinci satır sayıdır. Tırnak dosyada kalır, leaf çevresinde, ve ekranın iki satırının hiçbirinde yoktur.

Ekran ne gösterir

Bu Mint.java dosyasının bulunduğu klasörde javac Mint.java yazın. Dosya doğruysa bu komut hiçbir satır yazmaz. Noktadan sonraki bir soru tek başına javac'a satır yazdırmaz ve javac'ı başarısız etmez. Sonra java Mint yazın. java sonrasına .java yazmayın. Bunlar Windows'ta ve macOS'ta yazdığınız aynı iki komuttur. Bu sayfa kabuk istemini alıntılamaz. Program leaf yazar, sonraki satırda 4. Sizin yazmanızı beklemez. Harfler dosyada zaten vardı ve sayı o harflerle yanıtlanır. java Mint beklerse nextLine hâlâ dosyadadır. O satırı silin, tutma satırını ve iki yazma satırını bırakın. Program ikinci yazma satırından sonra biter.

Ekran leaf gösterir, sonra 4. Dört küçük harf, sonra sayı, iki satırın hiçbirinde tırnak yoktur. Ekran plant gösterirse bir yazma satırında adın çevresinde tırnak vardır: System.out.println("plant");. Bu tırnak p, l, a, n, t harflerini işaretler, bu yüzden tutulan leaf yazılmaz ve soru sorulmaz. Ekran yalnızca leaf gösterirse ikinci yazma satırı eksiktir. Tuttuğunuz dosyada iki satır vardır, önce harfler, sonra sayı. Ekran yalnızca 4 gösterirse ilk yazma satırı eksiktir. Harfler dosyada kalabilir, ama bu sayfanın kanıtı ekrandır: leaf, sonra 4. Ekran 4 gösterip sonra leaf gösterirse iki yazma satırı yer değiştirmiştir. println(plant) satırını println(plant.length()) satırının üstüne koyun. Ekran 5 gösterirse bu harfler için sayı yanlıştır. Tırnak, adın tuttuğu harfler değildir, bu yüzden 4'ün parçası değildir. Beşinci bir harf tırnağın arasında olmalıdır. Tuttuğunuz dosyada yalnızca l, e, a, f vardır. Ekran mint gösterirse hâlâ daha eski bir dosyadasınız. Ekran leaf gösterip sonra yine leaf gösterirse ikinci yazma satırı bir başka println(plant) olur, soru değil. Ekran yanlış satırı gösterdi diye Java'yı yeniden kurmazsınız.

Tırnağın arasındaki büyük bir harf de küçük harf gibi bir harf sayılır. String plant = "Leaf"; yine plant.length() ile 4 yazdırır. Harflerin yazma satırı Leaf gösterir, büyük L ile. Tuttuğunuz dosya bunu kullanmaz. Dört küçük harf kullanır ve sayı satırı 4 yazar. Sayıyı, gerçekten tırnağın arasında duran harflere göre değerlendirin.

Sayıyı ikinci bir adın altında tutabilirsiniz. int count = plant.length(); yanıtı alır ve tür sözcüğü int olur, çünkü yanıt bir tam sayıdır. Sonra System.out.println(count); 4 yazar. Bu serbesttir. Tuttuğunuz dosya bu değildir. Tutulan dosya soruyu doğrudan yazar, bu yüzden ekran leaf sonra 4 olur ve sayıyı görmek için ikinci bir ada gerek yoktur. 4 sayısı yanıttır. plant içindeki harflerin yerine geçmez.

Boşluk da bir sayılır

Tırnağın arasındaki harfler değişebilir ve sayı o harfleri izler. İlk sorunun altında aynı ada yeni bir harf kümesi tutun ve soruyu yeniden sorun. Yeni tutma satırı plant = "leaf stem"; olur. String ile başlamaz. plant zaten vardır, bu yüzden bu satır yalnızca adın tuttuğu harfleri değiştirir. Tırnağın arasında dokuz yer vardır: l, e, a, f, bir boşluk, s, t, e, m. Boşluk bunlardan biridir. length onu sayar. İki sözcük bir tutulan değer olarak kalır, iki ad değil. Bu ikinci dosya harfleri yazmaz. Yalnızca iki sayıyı yazar, ekran harflerin kendisiyle karışmasın diye.

Bu ikinci dosyadır. Tuttuğunuz dosya değildir. Tuttuğunuz dosyada bir tutma satırı, leaf harfleri, boşluk yok ve ekranda leaf sonra 4 vardır. Boşluğun sayıldığını görmek istediğinizde bu ikinci dosyayı Mint.java olarak kaydedin, sonra tutulan dosyayı geri koyun.

length'in saydığı boşluk

java
public class Mint {
    public static void main(String[] args) {
        String plant = "leaf";
        System.out.println(plant.length());
        plant = "leaf stem";
        System.out.println(plant.length());
    }
}

javac Mint.java yazın. Dosya doğrudur, bu yüzden javac hiçbir satır yazmaz. İkinci tutma satırı String yazmayabilir ve bu eksiklik javac'ı başarısız etmez. Sonra java Mint yazın. Ekran 4 gösterir ve sonraki satır 9 olur. İki satır. Tırnak yoktur. leaf harfleri ekranda yoktur. leaf stem harfleri de ekranda yoktur. Yalnızca sayılar vardır. İlk sayı, adın o anda tuttuğu harflerden çıkar. İkinci sayı, plant = "leaf stem"; sonrasında adın tuttuğu harflerden çıkar. İkinci satır 8 ise tırnağın arasında boşluk eksiktir ve tutulan harfler leafstem olur. İki satır da 4 ise ikinci tutma satırı eksiktir ya da hâlâ "leaf" der. İki satır da 9 ise ilk tutma satırı zaten "leaf stem" der. Ekran dosyadaki satırların sırasını izler ve tırnağın arasındaki harfleri izler, boşluk dahil.

Aynı ad için String'i ikinci kez yazmayın. plant'i çoktan oluşturan bir satırın altına konan String plant = "leaf stem"; ayrı bir hatadır. O satır plant'i yeniden oluşturmaya çalışır. javac bir hata yazar ve sessiz kalmaz. O hatanın tam sözcüklerine gerek yoktur. Henüz java Mint yazmayın. İkinci String'i silin ve plant = "leaf stem"; bırakın. Ad bir kez oluşturulur. Sonraki satırlar yalnızca tuttuğu harfleri değiştirir ya da o harfler hakkında soru sorar. Tuttuğunuz dosyada ikinci bir tutma satırı yoktur. 4 ve sonra 9 gördükten sonra o dosyayı geri koyun: String plant = "leaf";, println(plant) ve println(plant.length()).

Hangi harf hangi yerde

length kaç tane olduğunu sorar. Başka bir soru, bir yerde hangi harfin olduğunu sorar. Soru sözcüğü charAt olur. Yer parantezin içine girer, çünkü bu soru o fazladan sözcüğü ister. İlk yer 0'dır, 1 değil. leaf içinde yer 0 l tutar, yer 1 e tutar, yer 2 a tutar ve yer 3 f tutar. plant.charAt(0) tek harf l ile yanıtlar. plant.charAt(1) tek harf e ile yanıtlar. Yanıt bir harftir, leaf sözcüğünün tamamı değil ve yerin numarası değil. plant içinde tutulan harfler leaf kalır. Bir yeri sormak diğerlerini silmez.

Bu üçüncü dosyadır. Tuttuğunuz dosya değildir. Tuttuğunuz dosya length sorar ve ekranı leaf sonra 4 olur. Yerleri görmek istediğinizde bu üçüncü dosyayı Mint.java olarak kaydedin, sonra tutulan dosyayı geri koyun.

ilk iki yer

java
public class Mint {
    public static void main(String[] args) {
        String plant = "leaf";
        System.out.println(plant.charAt(0));
        System.out.println(plant.charAt(1));
    }
}

javac Mint.java yazın. Dosya doğrudur, bu yüzden javac hiçbir satır yazmaz. Parantez içindeki bir yer numarası, o yer harflerden biri olduğunda javac'ı başarısız etmez. Sonra java Mint yazın. Ekran l gösterir ve sonraki satır e olur. İki satır. Tırnak yoktur. leaf sözcüğü ekranda yoktur. 0 ve 1 sayıları ekranda yoktur. İlk satır e ise ilk soru yer 1'i istemiştir, bu ikinci harftir. İlk harf yer 0'dır. İlk satır leaf ise yazma satırı println(plant) olur, charAt değil. İlk satır 0 ise yazma satırı yerin numarasını yazmıştır ve charAt sormamıştır. İki satır da l ise iki soru da charAt(0) der. Yer 2 a yazar. Yer 3 f yazar. Bu iki yer leaf içinde vardır. Bu üçüncü dosya onları sormaz. 0 sorar, sonra 1, sayının 0'dan başladığını görün diye.

Harf olmayan bir yer

Yer 4, leaf'in harflerinden biri değildir. Sayı 4'tür ve var olan yerler 0, 1, 2 ve 3'tür. İlk soruyu plant.charAt(4) yapın ve üçüncü dosyanın geri kalanını bırakın. javac Mint.java yazın. javac hiçbir satır yazmaz. Satır izinli bir sorudur, bu yüzden eksik harf javac başarısızlığı değildir. Sonra java Mint yazın. Program bir hata yazar. Beşinci bir harf yazmaz ve 4 yazmaz. O hatanın tam sözcüklerine gerek yoktur. Yararlı olgu şudur: başarısızlık program çalışırken olur, javac dosyayı okurken değil. O iki satırı hâlâ istiyorsanız charAt(0) ve charAt(1) geri koyun, sonra tutulan dosyayı geri koyun. Tuttuğunuz dosyada charAt(4) bırakmayın.

Boş bir çiftin sayısı 0'dır. String plant = ""; hiçbir harf tutmaz. System.out.println(plant.length()); 0 yazar. javac hiçbir satır yazmaz, çünkü boş bir çift serbesttir. java Mint 0 yazar ve biter. Beklemez. Boş satır, önceki sayfada println(plant) satırının yazdığı şeydi. Soru başkadır: ekran 0 rakamını gösterir, bu sayıdır, boş satır değil. O boş çiftte plant.charAt(0), harf olmayan bir yerdir. javac yine hiçbir satır yazmaz. java Mint bir hata yazar, çünkü yer 0 bir harf ister ve sayı 0'dır. 0 gördükten sonra tutma satırını yeniden String plant = "leaf"; yapın.

Parantezler sorunun parçasıdır. System.out.println(plant.length); noktayı ve length sözcüğünü taşır, parantez taşımaz. javac bir hata yazar. Sessiz kalmaz. Okunacak ekran yoktur, çünkü javac bir hata yazarken java Mint yazmazsınız. Tam sözcüklere gerek yoktur. Boş parantez çiftini geri koyun, satır System.out.println(plant.length()); olsun. charAt boş olamaz. System.out.println(plant.charAt()); javac'ta bir hata yazar, çünkü o soru yeri ister. Üçüncü dosyadayken parantezin içine var olan bir yer koyun, örneğin 0. Tuttuğunuz dosya length() kullanır ve parantezlerin arasında bir şey yoktur.

Soruyu adın ardından yazarsınız. System.out.println(length()); length'i bu dosyada olmayan bir ad sayar. javac bir hata yazar. Soru sözcüğü plant ile bir noktanın ardına yazılır. System.out.println(plantlength()); da bir addır, plantlength, ve bu dosya onu tutmaz. Nokta, adı sorudan ayıran şeydir. Ad, onu kullanan satırdan önce var olmalıdır. System.out.println(plant.length()); , String plant = "leaf"; üstüne yazılmışsa javac bir hata yazar. Soru, plant var olmadan plant adını anar. Tutma satırını yazma satırlarının üstüne taşıyın. count ve reader için çoktan kullandığınız sıra budur.

Soru harfler içindir, int ile tuttuğunuz bir tam sayı için değil. int count = 4; ve System.out.println(count.length()); bir tam sayıya kaç harf tuttuğunu sorar. javac bir hata yazar. Bir tam sayının length sorusu yoktur. Bu sayfadaki onarım yalnızca parantez eklemek değildir. Onarım, soruyu harf tutan ada sormaktır: plant.length(). Tırnak sayfasından önceki sayfa int tutuyordu ve 4 tutuyordu, soru yoktu. Önceki sayfa String tutuyordu ve "leaf" tutuyordu. Bu sayfa String tutar, "leaf" tutar ve length sorar.

Artık bir adın çoktan kaç harf tuttuğunu ve 0'dan başlayan bir yerde hangi harfin olduğunu sorabilirsiniz. String plant = "leaf"; hâlâ leaf tutar. System.out.println(plant); leaf yazar. System.out.println(plant.length()); 4 yazar ve harfler leaf kalır. Daha sonraki bir plant = "leaf stem"; sonraki sayıyı 9 yapar, çünkü boşluk bir sayılır. plant.charAt(0) l yazar ve plant.charAt(1) e yazar. Harf olmayan bir yer, leaf için 4 gibi, javac'ı sessiz bırakır ve java Mint'in bir hata yazmasını sağlar. Parantezsiz length, javac'ın bir hata yazmasını sağlar. Sonraki sayfa bu soruları bırakır. Bu sayının yazdığı 4 gibi bir tam sayıyla kalır ve o sayıyı dosyaya yeniden siz yazarsınız.

Ekran yanıtı gösterir, harfler kalır

Tuttuğunuz dosya leaf yazar, sonra 4. İlk yazma satırındaki ad plant'tir ve plant ekranda yoktur. length dosyadadır, noktadan sonra, ve ekranda yoktur. Tırnak leaf çevresinde kalır. Sayılmaz ve ekranda yoktur. Tırnağın arasındaki bir boşluk sayılır. İlk yer 0'dır.

🧠 Bilginizi Test Edin

Başlamaya Hazır

Bilginizi Test Edin

Bu interaktif sınavla kendini test et ve konuyu ne kadar iyi anladığını gör

❓
6
Sorular
🎯
70%
Geçmek İçin
♾️
∞
Süre
🔄
∞
Deneme

📝 Talimatlar

  • Her soruyu dikkatle okuyun
  • Her soru için en iyi cevabı seçin
  • Quiz'i istediğiniz kadar tekrar alabilirsiniz
  • İlerlemeniz üstte gösterilecek