Dizi ( Array ) ve Dizgi ( String )

Benzer belgeler
Java da İşleçler, Ders #3 (4 Kasım 2009)

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

// hataları işaret eden referans

Dizi türündeki referanslar, dizi nesnelerine bağlanmaktadır. Dizi referansları tanımlamak bu dizinin hemen kullanılacağı anlamına gelmez...

Programlama Dillerinde Kullanılan Veri Tipleri

D İ Z İ L E R A R R A Y S

Java String İşlemleri

Java da İstemci Tarafı Uygulamalar

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

İçerik. Kapsülleme ( Encapsulation ) Java da Kalıtım: Örnek 2.1. Kalıtım ( Inheritance ) Tekrar Ziyaret. Java da Kalıtım: Örnek 2.2.

Kapsülleme ( Encapsulation ) BBS-515 Nesneye Yönelik Programlama

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

JAVADA DİZİ İŞLEMLERİ

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 2 DERSİ LAB. ÖDEVİ

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Programlama Dilleri 3

İST 264 VERİ YAPILARI Bitirme Sınavı A Grubu

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

EMT2226 Nesne Yönelimli Programlamaya Giriş

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 4. UYGULAMA

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

Güz Yarıyılı Balıkesir Üniversitesi Bilgisayar Mühendisliği Bölümü

Güz Yarıyılı Balıkesir Üniversitesi Bilgisayar Mühendisliği Bölümü

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

Ders - 7 while döngüsü

Cybersoft Bilişim Teknolojileri Sunucu Tarafı Programlaması Kursu Final soruları. Tarih: 27 Kasım 2010 Saat: 13:30 Süre: 3 saat

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

KUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Konular. Hafta 5 Veri Tipleri (Devam) BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

ALGORİTMA VE PROGRAMLAMA II

Arasınav Örnek Soruları Bahar 2018

Java Programlama Dilinde Veri Tipleri. Yrd. Doç. Dr. Aybars UĞUR

Java ile Nesneye Yönelik Programlama (Object Oriented Programming)

1. Her marka için 3 aylık satış toplamı nedir? (Tablodaki satır toplamları)

Lambda İfadeleri (Lambda Expressions)

BİL-141 Bilgisayar Programlama I (Java)

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

C++ Dersi: Nesne Tabanlı Programlama

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 9. UYGULAMA

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

J A V A D A P R O G R A M D E N E T İ M İ V E O P E R A T Ö R L E R

Length: metin uzunluğunu yada diğer bir deyişle dizi elaman sayısını döndürür.

Java Programlama. Diziler, Döngüler ve Karakter Katarları (String Sınıfı)

Programlama Dilleri III 1

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Örnek 1: Programı yazın ve çalıştırın.

NESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ

Merge (Bireşim) Algoritmayı önce bir örnek üzerinde açıklayalım.

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

DÖNGÜLER BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA DENEY-4 FÖYÜ GİRİŞ LABORATUARI.

Klavyeden Basit Giriş/Çıkış İşlemleri

BASİT VERİ TÜRLERİ, STRİNGLER, VE KONSOL GİRİŞ/ÇIKIŞ

Örnek1: #include <iostream> #include <string> using namespace std;

Temel Veri Türü İşlemleri

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

1 PROGRAMLAMAYA GİRİŞ

Operator Aşırı Yükleme (Operator OverLoading)

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

BİL1001 Bilgisayar Bilimlerine Giriş 1

Programlama Dilleri 1. Ders 4: Diziler

Veri Yapıları ve Algoritmalar dönem

String (Dizgi) İşlemleri

Nesne Yönelimli Programlama

HSancak Nesne Tabanlı Programlama I Ders Notları

YMT219 VERİ YAPILARI ÖDEV-1

C++ Dersi: Nesne Tabanlı Programlama

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

Bölüm 6. Karma. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 31

public static int Toplam int x, int y

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

Erişim konusunda iki taraf vardır:

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

BIL101 07/11/2012 Lab5 Programlama Sorulari

Sınıf üyeleri: değişkenler (fields) and metotlar (methods) Değişkenler: nesne içerisindeki değişkenlerdir Temel veri tipi veya sınıf tipi

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 6. UYGULAMA

C PROGRAMLAMA D İ L İ

Transkript:

Java da Dizi ( Array ) ve Dizgi ( String ) Tanımlama BBS-515 Nesneye Yönelik Programlama Ders #6 (25 Kasım 2009)

İçerikç Geçen ders: Kalıtım ( inheritance ) -- tekrar ziyaret Java da super kullanımı Java da static ve final tanımları Java da kapsülleme ( encapsulation ) Bu ders: Java da dizi ( array ) ve dizgi ( String ) tanımlama Örnekler -2- BBS-515-DN06 / 2

Dizi aslında bir nesnedir. Sözdizimi: Dizi ( Array ) Tanımlama - 1 type [] degisken_adi; veya type degisken_adi []; Örnek: int [] aygun; aygun = new int [12]; // ayın günlerini tutmak için tamsayı dizisi İkisi birarada: int [] aygun = new int [12]; aygun [1] = 28; // 0-tabanlı endeksleme İlklendirme: int [] aygun = { 31, 28, 31, 30, ; -3- BBS-515-DN06 / 3

Dizi: Örnek 1 class UzunlukDemo { public static void main (String args []) { int [] a1 = new int [10]; int [] a3 = {4,3,2,1; // ilklendirme tanımlama aşamasında yapılır. // a3 = {4,3,2,1; ilklendirmesine izin verilmez. System.out.println ( a3 uzunluğu : + a3.length); -4- BBS-515-DN06 / 4

Dizi: Örnek 2 int [] a = new int [6]; int [] b = {13, 23, 55, 4; a = b; // sadece bellek adresini (referansı) kopyalar. a = (int[]) b.clone(); // dizinin aynısını kopyalar. tip değiştirme ğ ş nesne ( object ) (type casting) döndürür Nesneyi tamsayı dizisine çevirerek geçirir. -5- BBS-515-DN06 / 5

type [] f; type [] f = new type [number]; type [] f = {value, value,, value; f=new type [] {value, value,, value; Dizi ( Array ) Tanımlama - 2 // Diziye referans tanımlar. // Diziyi tanımlar ve ilklendirir. // Diziyi tanımlar ve ilklendirir. // Yeni bir diziyi tanımlayıp ilklendirerek f e atar. f = g; // f,,g dizisine işaret ş (referans) eder. f = (type[]) g.clone(); f.length; // f, g dizisinin kopyasına işaret (referans) eder. // f dizisindeki elemanların sayısını döndürür. System.arraycopy (f1, startpos1, f2, startpos2, number); // number ile belirtilen sayıdaki elemanı, f1 dizisinin startpos1 // elemanından itibaren, f2 dizisine startpos2 elemanından başlayarak kopyalar. f == g //fvegdizideğişkenlerinin değişkenlerinin, aynı diziye referans edip etmediklerini kontrol eder. -6- BBS-515-DN06 / 6

Dizi: Örnek 3 public class DiziDemo { public static void main (String args []) { String[] h1; // Diziye referans tanımlar. String[] h2 = new String[7]; // Diziyi tanımlar ve ilklendirir. // Diziyi tanımlar ve ilklendirir. String[] h3 = {"Pazartesi", "Salı", "Çarşamba", "Persembe", "Cuma", "Cumartesi", "Pazar"; // Yeni bir diziyi tanımlayıp ilklendirerek h4 e atar. String[] h4 = new String [] {"Pazartesi", "Salı", "Çarşamba", "Persembe", "Cuma", "Cumartesi", "Pazar"; // h1, h3 dizisine işaret (referans) eder. h1 = h3; h1[0]= "P.tesi"; h1[5] = "C.tesi"; // h1 ve h3 dizi değişkenlerinin, aynı diziye referans edip etmediklerini kontrol eder. if (h1 == h3) System.out.println ("h1 ve h3 aynı diziye işaret ediyor."); else System.out.println ("h1 ve h3 aynı diziye işaret etmiyor."); // h1, h4 dizisinin kopyasına işaret (referans) eder. h1 = (String[]) h4.clone(); h1[0]= "P.tesi"; h1[5] = "C.tesi"; // h1 ve h3 dizi değişkenlerinin, aynı diziye referans edip etmediklerini kontrol eder. if (h1 == h3) System.out.println ("h1 ve h3 aynı diziye işaret ediyor."); else System.out.println ("h1 ve h3 aynı diziye işaret etmiyor."); // f dizisindeki elemanların sayısını döndürür. System.out.println("h1 dizisinin uzunluğu: " + h1.length); // h4 dizisinin son elemanını h2 dizisinin ilk elemanı olarak atar. h2[0]=h4[6]; // System.arraycopy (f1, startpos1, f2, startpos2, number); // number ile belirtilen sayıdaki elemanı, f1 dizisinin startpos1 // elemanından itibaren, f2 dizisine startpos2 elemanından başlayarak kopyalar. // h2 dizisinin kalan elemanlarına, h4 dizisinin ilk 6 elemanını kopyalar. System.arraycopy(h4, 0, h2, 1, 6); // h2 dizisinin elemanlarını yazdırır. System.out.println("h2 dizisinin elemanları: "); for (int i=0; i<7; i++) System.out.println (h2[i]); -7- BBS-515-DN06 / 7

Tanım: int ikiboyutlu [] [] = new int [4] [5]; Çok-Boyutlu Dizi Tanımlama Java da çok boyutlu bir dizinin i i satır ve sütün sayıları aynı olmak zorunda değildir. Örnek: int ikib [] [] = new int [4] []; ikib [0] = new int [1]; ikib [1] = new int [2]; ikib [2] = new int [3]; ikib [3] = new int [4]; -8- BBS-515-DN06 / 8

Dizi: Alıştırmaş İlk 100 asal sayıyı bulan ve ekrana bastıran Java konsol programını yazın. -9- BBS-515-DN06 / 9

Dizgi ( String ) Tanımlama Dizgi aslında bir nesnedir. Tanım: String mystring = Bu örnek bir dizgidir. ; + işleci dizgileri birleştirmek için kullanılır. String mystring = Bu örnek bir + dizgidir dizgidir. ; java.lang paketi ( package ) içinde yer alır. import java.lang.string; -10- BBS-515-DN06 / 10

Dizgi: Örnek 1 class DizgiOrnek { public static void main (String args[]) { for (int i=0; i<args.length(); i++) System.out.println ( args[ + i + ]: + args[i]); javac DizgiOrnek.java java DizgiOrnekiO bu bir dizgi i ornegidir 100-1 Çıktı: args[0]: bu args[1]: bir args[2]: dizgi args[3]: ornegidir args[4]: 100 args[5]: -1-11- BBS-515-DN06 / 11

java.lang.string g Sınıfının Yöntemleri String s1 = Java, s2 = Programming ; char c = g, d = s ; s1.length(); // s1 içindeki karakter sayısını döndürür. s1.charat(n); // s1 içindeki i n. karakteri kt döndürür. dü ü s1.equals(s2); s2.indexof(c); // s1 s2 ye eşitse 1, değilse 0 döndürür. // s1 içinde c ile tanımlı karakterin bulunduğu ilk sırayı // döndürür; karakter yoksa -1 döndürür. s2.lastindexof(c); // s1 içinde c ile tanımlı karakterin bulunduğu ğ son sırayı s1.trim(); s2.replace(c,d); // döndürür; karakter yoksa -1 döndürür. // s1 dizisinin başındaki ve sonundaki boşluk ve tab // karakterlerini kaldırarak kopyasını döndürür. // s1 dizisi içindeki c ile tanımlı her karakteri, // d ile tanımlı karakterle değiştirerek diziyi döndürür. -12- BBS-515-DN06 / 12

public class DizgiDemo { public static void main (String args []) { String s1 = "Java "; String s2 = "Programming"; String s3; char c = 'g'; char d = 's'; Dizgi: Örnek 2 // s1 içindeki karakter sayısını döndürür. System.out.println (s1 + " dizgisinin uzunlugu: " + s1.length()); // s1 içindeki n. karakteri döndürür. System.out.println (s1 + " dizgisinin n. karakteri: " + s1.charat(2)); s3 = "Java "; // s1 s3 e eşitse 1, değilse 0 döndürür. if (s1.equals(s3)) System.out.println ("s1 s3'e esit: " + s1 + " = " + s3); // s1 içinde c ile tanımlı karakterin bulunduğu ilk sırayı // döndürür; karakter yoksa -1 döndürür. System.out.println (s2 + " dizgisi icinde '" + c + "' karakterinin ilk konumu: " + s2.indexof(c)); System.out.println (s2 + " dizgisi icinde '" + d + "' karakterinin ilk konumu: " + s2.indexof(d)); // s1 içinde c ile tanımlı karakterin bulunduğu son sırayı // döndürür; karakter yoksa -1 döndürür. System.out.println (s2 + " dizgisi icinde '" + c + "' karakterinin son konumu: " + s2.lastindexof(c)); System.out.println (s2 + " dizgisi icinde '" + d + "' karakterinin son konumu: " + s2.lastindexof(d)); System.out.println(s1 + "6"); // s1 dizisinin başındaki ve sonundaki boşluk ve tab // karakterlerini kaldırarak kopyasını döndürür. System.out.println(s1.trim() + "6"); System.out.println(s2); // s1 dizisi içindeki c ile tanımlı her karakteri, // d ile tanımlı karakterle değiştirerek diziyi döndürür. System.out.println(s2.replace(c,d)); -13- BBS-515-DN06 / 13

Dizgi: Alıştırmaş Verilen karakter dizisinin (dizginin) palindrome olup olmadığını bulan Java konsol programını yazın. -14- BBS-515-DN06 / 14