Skip to main content

Java’da Rastgele Karakterler Üretmek

Merhabalar . Derslerin yoğunluğundan ötürü uzunca bir süredir  blog yazamadığımın farkına vardır ve gecenin bu saatinde bir şey paylaşma isteği doğdu. 🙂

Java’da basit bir sınıf  yazdım ve bunu paylaşmak istedim.  Bu sınıf ne işe yarar ? Hepimiz mutlaka bir yerlerde rastgelmişizdir rastgele  parola  üreten sitelere yada programlara.  İşte bu sınıf tam olarak bu işlemi yapıyor.    Bu Java sınıfı rastgele karakter üretmek üzere yazıldı.  Kullanıcı   istediği  aralıkta rastgele karakter üretebiliyor.  Bir değişken vasıtasıyla  istediğimiz uzunlukta  stringlerde oluşturabiliriz böylelikle.

Şimdi sınıfın kodlarını paylasayim. Gerekli acıklamaları kodların arasına yazdım.  Umarım bir yerlerde işinize yarar 🙂

 

karakterUretme sınıfı :


/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package karakteruret;

/**
 *
 * @author Aytac Cici
 */
public class KarakterUret {

    /**
     * Aytaç Cici http://www.aytaccici.com
     * 
     */
    public  char karakterUret(char karakter1 , char karakter2){
       // Parametre  olarak gobderilen iki karakter arasında  karaktr üretilecek
        // orneggin a - e girdik diyelim program a,b,c,d,e karakterlerini üretecektir
        
        
        return (char)(karakter1+Math.random()*(karakter2-karakter1+1));
       
    }
    
     public  char karakterUret(){
       
       // Herhangi bir karakter üretir.  Overload yaptık 
         // asci kodlarla hareket ediyoruz 0-255 arası bir kod üretebilir 
        
        return karakterUret('\u0000','\uFFFF');
       
    }
    
   public  char kucukKarakterUret(char karakter1 , char karakter2){
       
       return karakterUret('a', 'z');
   }
   
    public  char buyukKarakterUret(char karakter1 , char karakter2){
       
       return karakterUret('A', 'Z');
   } 
    
     public  char rakamUret(char karakter1 , char karakter2){
       
       return karakterUret('0', '9');
   } 
}


Bu sınıfı kullandığımız ana program ise aşağıdaki gibidir. String Builder nesnesi kullanarak üretilen tek karakteri birleştirerek çok karakterden oluşan şeyler ürettik.



/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package karakteruret;

/**
 *
 * @author Aytac Cici
 */
public class testKarakterUret {
   
    public static void main(String args []){
        
       KarakterUret karakterUretici = new KarakterUret();
       int kacKarakter = 10; // Karakter uzunlugunu bu degisken ile berlileyeceğiz
       StringBuilder sadeceKarakterler =  new StringBuilder("");
       StringBuilder sadeceRakamlar =  new StringBuilder("");
       StringBuilder butunKarakterler =  new StringBuilder("");
       char uretilenKarakter; 
       char uretilenRakam;
       char karakterRakam;
        for (int i = 0; i < kacKarakter; i++) {
              // sadece A - Z arası karakterler üretir
              uretilenKarakter=karakterUretici.buyukKarakterUret('A', 'Z');
              uretilenRakam=karakterUretici.rakamUret('0', '9');
              karakterRakam=karakterUretici.karakterUret();
            sadeceKarakterler.append(uretilenKarakter);
            sadeceRakamlar.append(uretilenRakam);
            butunKarakterler.append(karakterRakam);
        }
       
       
       System.out.println(sadeceKarakterler);
       System.out.println(sadeceRakamlar);
        System.out.println(butunKarakterler);
    }
    
    
}

Umarım bir yerlerde yararı olur. Görüşmek dileğiyle 🙂

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS