(Microsoft PowerPoint - 6.Hafta - Java Fonksiyonlar, D\366ng\374ler

advertisement
JAVA PROGRAMLAMA
Öğr. Gör. Utku SOBUTAY
İÇERİK
2
•
•
•
•
Java’da Fonksiyon Tanımlamak
Java’da Döngüler
Java’da Şart İfadeleri
Uygulamalar
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Java’da Fonksiyon Tanımlamak
JAVA’DA FONKSİYON TANIMLAMAK
•
•
•
4
•
•
Fonksiyonlar; çalıştırıldığında üstlendiği işleri yapmak üzere
hazırlanan kod bütünleridir.
Fonksiyonların kullanım amaçları; yazılan bir kodun tekrar tekrar
kullanılabilmesini ve karmaşık kodların ufak parçalara bölünmesini
sağlamaktır (Örneğin; toplama fonksiyonu).
Fonksiyonlara giriş olarak, hiçbir değer (parametre) gönderilmediği
gibi bir ve daha fazla değer (parametre) gönderilebilir.
Aynı şekilde fonksiyonların yaptığı iş sonucunda geriye hiçbir değer
döndürmediği gibi geriye değer (sonuç) döndüren fonksiyonlar da
oluşturulabilmektedir.
Bir fonksiyon iki bileşenden oluşur;
– Fonksiyon Başlığı
– Fonksiyon Bloğu
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA FONKSİYON TANIMLAMAK
•
5
•
Fonksiyon Başlığı sıra ile;
– fonksiyonun sonuç (geri dönüş) veri tipi
– fonksiyonun ismi
– fonksiyonun parametrelerinden (giriş değişkenleri)
oluşmaktadır.
Fonksiyon Bloğu ise;
– Fonksiyonun yapacağı işlerin kodlandığı kısımdır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA FONKSİYON TANIMLAMAK
•
Örnek; Java’nın standart main fonksiyonu incelenirse;
public static void main(String[] args){
……………
}
6
Fonksiyon Başlığı
Fonksiyon Bloğu
– Bu fonksiyonda
• static sabit değişmeyen bir fonksiyon olduğunu
• void fonksiyonun geri dönüş (sonuç) verisinin olmadığını
• main fonksiyonunun ismini
• (String[] args) String veri tipinde dizi olarak giriş
değişkenlerinin bulunduğunu belirtmektedir.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA FONKSİYON TANIMLAMAK
•
•
7
Fonksiyonların parametre alması zorunlu değildir, giriş verisi
olmayan fonksiyonlar da tanımlanabilmektedir.
Örnek;
public void selam(){
System.out.println("Merhaba Java Kullanıcısı");
}
– Bu fonksiyonda selam fonksiyon isminin yanına parantez açılıp
kapatılmış ve içerisine bir şey yazılmamıştır. Giriş parametresi
olmayan ve geriye sonuç döndürmeyen (void ile tanımlanmış),
sadece konsola yazı yazdıran bir fonksiyondur.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA FONKSİYON TANIMLAMAK
•
•
Fonksiyonlara parametre gönderirken; fonksiyon isminin yanına
parantez içinde, veri tipi ve değişken ismi şeklinde, kaç tane değişken
gönderilecek ise; aralarında virgül kullanılarak yazılır.
Örnek; Parametre olarak verilen iki tam sayıyı toplayıp sonucu yine
tam sayı verecek biçimde fonksiyon yazıldığında;
public int topla(int sayi1, int sayi2){
return sayi1+sayi2;
}
8
•
•
•
Yukarıda yazılan topla fonksiyonu sayı1 ve sayı2 olmak üzere iki adet
tamsayı (int) parametre almıştır.
Geriye return kullanılarak sayı1 ve sayı2’nin toplamını tamsayı (int)
olarak döndürmüştür, çünkü fonksiyon başlığında dönüş değeri int
olarak tanımlanmıştır.
Geriye değer döndürmeyen fonksiyonlarda return sadece fonksiyondan
çıkmak istendiği zaman kullanılır, diğer durumlarda kullanılmaz.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA FONKSİYON TANIMLAMAK
• Statik Fonksiyonlar:
9
– Statik fonksiyonlar, nesnelerden bağımsız olarak kullanılabilen
fonksiyonlardır.
– Standart (statik olmayan) bir fonksiyon, bir sınıf içerisinde
tanımlandığında, o sınıftan nesne oluşturmadan o fonksiyonu
kullanamayız.
– Fakat, statik olarak tanımlanan fonksiyonlar nesne tanımlanmasa bile
direk çağrılıp kullanılabilmektedir.
– Bir sınıf içerisindeki statik fonksiyonu, oluşturulan başka bir sınıftan
çağırmak için, sınıf ismini yazıp nokta koyup fonksiyon ismini yazarız.
– Örneğin; Integer.parseInt(…) gibi bu örnekte parseInt() fonksiyonu
statik olarak tanımlanmıştır ve Integer nesnesi oluşturmadan sınıf
adıyla çağrılabilir.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA FONKSİYON TANIMLAMAK
• Statik Fonksiyon Örneği:
10
•
•
•
•
Tanımlanan fonksiyon Netbeans IDE’si kullanılarak yazılmıştır.
ToplamaIslemi gelen sınıftır ve Java dosyasının ismi ile aynıdır.
Topla fonksiyonu static olarak tanımlanmıştır ve main içerisinden nesne oluşturmadan
direk topla(5,21) parametreleri ile çağrılabilmiştir.
Statik olarak tanımlanmasaydı, mecburen ToplamaIslemi sınıfından bir nesne
oluşturulması gerekilecekti.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Java’da Döngüler
JAVA’DA DÖNGÜLER
•
•
•
12
•
•
Döngüler, içlerine yazılan belirli bir kodun tekrarlı olarak
çalıştırılmasını sağlamaktadır.
Döngüler; döngü bloğu ve önermeden oluşur.
Önerme; döngünün kaç kere ve ne kadar süre döndürüleceğini
belirtmektedir.
Döngü bloğu; döngünün her seferinde hangi işlemi yapacağını
belirtmektedir.
Döngü Çeşitleri;
– For Döngüsü
– While Döngüsü
– Do - While Döngüsü
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA DÖNGÜLER
•
For Döngüsü:
– Yapılan işlemlerin belirli sayıda tekrarlanmasını sağlamaktadır.
– For döngüsü daha çok sayaçlı işlemler için kullanılmaktadır.
– For döngüsünün Java’da kullanımı aşağıdaki gibidir;
13
for (int i=başlangıç değeri;i<bitiş değeri;i++){
………
}
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA DÖNGÜLER
•
For Döngüsü:
– Örneğin; birden 10’a kadar olan sayıları konsolda yazdıracak
for döngüsü kodu aşağıdaki gibidir.
Döngü içerisinde kullanılan a
tamsayı değişkeni kod içerisinde
kullanılabilir.
14
Yukarıdaki kodun konsol çıktısı
yandaki gibi olacaktır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA DÖNGÜLER
•
15
While Döngüsü:
– Döngüye girilmeden önce döngü önermesi kontrol edilmektedir,
eğer önerme doğru (true) ise; döngü bloğu çalıştırılmaktadır,
döngü doğru değilse (false); döngü sonlandırılmaktadır.
– Önerme sağladığı sürece döngü içerisindeki işlemi yapar.
– Önermenin sürekli sağladığı durumlarda, sonsuz döngüye
girilebilir.
– While döngüsünün Java’da kullanımı aşağıdaki gibidir;
while (önerme-şart){
….
}
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA DÖNGÜLER
•
While Döngüsü:
– Örneğin; birden 10’a kadar olan sayıları konsolda yazdıracak
while döngüsü kodu aşağıdaki gibidir.
sayac 10 ve 10’dan küçük ise
while içerisindeki işlemleri yapar,
10 olduğu zaman döngü sonlanır.
16
Yukarıdaki kodun konsol çıktısı
yandaki gibi olacaktır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA DÖNGÜLER
•
17
Do-While Döngüsü:
– Do döngüsünün tam tersi biçimindedir.
– Önerme döngü içerisinde yapılan işlemlerin sonunda kontrol
edilmektedir.
– Döngü içerisindeki işlem zorunlu olarak en az bir kez işlem
görür.
– Döngü sonunda kontrol edilen önerme doğru ise; döngü tekrar
çalışır; doğru değil ise döngü sonlandırılır.
– Do-While döngüsünün Java’da kullanımı aşağıdaki gibidir;
do{
….
}while (önerme-şart)
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA DÖNGÜLER
•
Do-While Döngüsü:
– Örneğin; birden 10’a kadar olan sayıları konsolda yazdıracak
do-while döngüsü kodu aşağıdaki gibidir.
sayac 10 olana kadar döngü içerisinde
işlem gerçekleştirilir. Sayac 10
olduğunda döngü sonlanır. Sayaç artırımı
konsolda sayacı yazdırdıktan sonra
yapılsaydı sayma işlemi 0’dan başlardı.
18
Yukarıdaki kodun konsol çıktısı
yandaki gibi olacaktır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Java’da Şart İfadeleri
JAVA’DA ŞART İFADELERİ
•
Şart ifadeleri; şart sağlandığında belirlenen bir işin yapılmasını,
şart sağlanmadığı taktirde başka bir işin yapılmasını sağlamaktadır.
•
Şart ifadeleri, programın karar vermesini sağlamaktadır.
•
Şart İfadeleri üçe ayrılabilir;
– If Karar Yapısı
– If-else Karar yapısı
– Switch Karar Yapısı
20
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• If Karar Yapısı:
– Eğer şartı sağlıyorsa işlemleri gerçekleştir, şartı sağlamıyorsa
işlemleri yapmadan devam et anlamında kullanılmaktadır.
– If komutundan sonra parantez içerisinde şart yazılır.
– If Karar yapısının Java’da kullanımı aşağıdaki gibidir;
21
If (şart ifadesi){
….
}
– Şart ifadesini yazarken; ==,!=, <,<=,>,>= gibi operatörler
kullanılabilir.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• If Karar Yapısı:
– Örneğin; öğrencinin notu tam sayı olarak tanımlanmıştır. Eğer
öğrencinin notu 50 ve 50’den büyük ise; konsola geçti yazacak
değilse kaldı yazacak Java kodu aşağıdaki gibidir;
22
Tam sayı not değişkeni tanımlanmıştır
ve değer ataması yapılmıştır. Eğer not
değişkeninin değeri 50 ve 50’den büyük
ise konsola Geçti yazacaktır. Diğer
durumlarda Kaldı yazacaktır.
not değişkeni 45 olduğu için konsola kaldı yazmıştır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• If Karar Yapısı:
23
– If karar yapısı içerisinde birden fazla şart ifadesi kullanılabilmektedir.
– Bu şart ifadeleri && veya || operatörleri ile bağlanabilmektedir.
– && operatörü ile bağlandığında «ve» anlamına gelmektedir; her iki şart
doğru olduğunda işlemler gerçekleştirilmektedir.
– || operatörü ile bağlandığında «veya» anlamına gelmektedir;
şartlardan
en
az
bir
tanesi
doğru
olduğunda
işlemler
gerçekleştirilmektedir.
– Kullanımı:
VE (AND)
VEYA (OR)
If (şart ifadesi1 && şart ifadesi2){
….
}
If (şart ifadesi1 || şart ifadesi2){
….
}
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• If - Else Karar Yapısı:
– Eğer şartı sağlıyorsa işlemleri gerçekleştir, şartı sağlamıyorsa
başka işlemleri yap (bu başka işlemler arasında başka if karar
yapıları da olabilmektedir), hiç biri de değilse devam et
anlamında kullanılmaktadır.
– If – else Karar yapısının Java’da kullanımı aşağıdaki gibidir;
24
If (şart ifadesi){
….
}else{
….
}
– Else ifadesi kısmına else if yazarak yeni bir şart eklenebilir.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• If - else Karar Yapısı:
– Örneğin; bir sayı yazıldığında sayı 100’de büyükse konsola 100’den
büyük, 50’den büyükse 50’den büyük; her ikisi de değilse 50’den küçük
yazdıran Java kodu aşağıdaki gibidir;
If-else yapısında ilk else’den
sonra else if kullanılarak bir şart
daha yazılmış. Her iki şartın
olmadığı durum için ise ikinci else
kodu yazılmıştır.
25
1. If – else yapısı
2. If – else yapısı
Sonuçta sayi değeri 58 olduğu için 1. If-else yapısının
doğru olduğu bloğa girecektir.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• Switch Karar Yapısı:
26
– Tek bir değişkene bağlı bir şart yazıldığında; değişkenin aldığı değerlere
göre farklı işlemeler yapılmak isteniyorsa switch kara yapısı kullanılır.
– Switch Karar yapısın değişken tipi olarak; int, byte, short ve char
tipleri kullanılabilmektedir. Diğer veri tipleri kullanılamaz.
– Default; hiçbir şartı sağlamıyorsa yapılması istenenler bu kısma yazılır.
– Switch Karar yapısının Java’da kullanımı aşağıdaki gibidir;
switch (değişken){
case ‘değer1’: … break;
case ‘değer2’: … break;
case ‘değer3: … break;
……
default: ….
}
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA’DA ŞART İFADELERİ
• Switch Karar Yapısı:
– Örneğin; girilen bir karakterin ünlü harfler grubunda mı, yoksa ünsüz
harfler grubunda mı olduğunun tespit edilmesi için kullanılan Java kodu
aşağıdaki gibidir;
27
char tipindeki harf değişkeninin değeri a olduğu için
konsola a unlu bir harftir yazılmıştır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Uygulamalar
UYGULAMALAR
•
UYGULAMA 1: Eğer not 90’a eşit veya büyükse konsola A, 80’e eşit veya
büyükse B, 70’e eşit veya büyükse C, 60’a eşit veya büyükse D, diğer
durumlarda ise E yazan Java kodunu IF-ELSE karar yapısı ile yazınız.
29
Tam sayılı not değişkenine 70 değeri
atandığı için sonuç olarak konsola C
karakteri yazılmıştır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
UYGULAMALAR
•
UYGULAMA 2: 0’dan 20’a kadar olan sayılar içerisinde tek sayı olanların
konsola yazılması
30
0’dan 20’ye kadar olan sayılar içerisinde 2’ye tam olarak bölünmeyenler konsola yazdırılmıştır
ve sayaç yardımıyla kaç tane tek tam sayı olduğu sayılmış ve döngü bittiğinde sayaç konsola
yazdırılmıştır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
GENEL BAKIŞ
•
31
•
•
•
Diğer programlama dillerinde olduğu gibi Nesne Tabanlı olan Java
programlama dilinde de fonksiyon, döngü ve şart ifadeleri
bulunmaktadır.
Döngüler; bir işin birden fazla kez yapılmasını sağlamaktadır.
Şart ifadeleri; bir şartın sağlayıp sağlamadığını kontrol edip
gerekenlerin yapılmasını sağlamaktadır.
Fonksiyonlar; işlerin yapılması için kod tekrarını engellemek amacıyla
yazılan komut gruplarıdır.
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Ders Bitti.
Dinlediğiniz için teşekkürler…
•Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Download