Kullanıcı:
Parola:
Tüm Forumlar Sıkça Sorulan Sorular Parola Hatırlat Kayıt Olun!
 
Seçenekler
Paylaş

Java Programlama HATA NEREDE ?

Yeni Üye
Mesaj
1
Kayıt
06 Oca 2012

Kişisel Sayfası

PermaLink06 Oca 2012  11:06


 import java.util.Scanner;
 
import javax.swing.JOptionPane;
class Personel  {
public static void main(String args[]) {
String A[] = { "", 
"\n1.Kişinin Bilgilileri",
"\n2.Kişinin Bilgilileri", 
"\n3.Kişinin Bilgilileri", 
};
JOptionPane.showInputDialog("Personel Bilgileri#\n\n\n" +
  "1.Personel :1.Kişi\n" +
  "2.Personel :2.Kişi\n" +
  "3.Personel :3.Kişi\n" +
  "Personel Bilgileri İçin Numarasını Giriniz.");
 
Scanner tara = new Scanner(System.in);
int y = tara.nextInt();
if (y > 0 && y <= 16){
 JOptionPane.showInputDialog(y + ".Personel:" + A[y]);
}
 
else {
 JOptionPane.showInputDialog("1 ile 16 Arasında Bir Rakam Giriniz.\n");
 JOptionPane.showInputDialog(
   "1.Personel :1.Kişi\n" +
   "2.Personel :2.Kişi\n" +
   "3.Personel :3.Kişi\n" +
   "\nProgramı Tekrar Çalıştırınız.");
}
 
}
}
 
 
 
 
arkadaşlar bu programda karşınıza ilk penceredeki personel listesi çıktıktan sonra  sonra personel numarasını girince pencere kayboluyor personel bilgilerinin yer aldığı ikinci pencere ekranda niye gelmiyor. JOptionPane.showInputDialog  ile ekrana yazdırdığımızda bu sorun oluyor ama diğer türlü system.out.println ile yazdırdığımızda editörün konsol bölümüde çalışıtrıdığımızda sıkıntı olmuyor bu konuda yardımlarınızı bekliyorum teşekkürler . 


En üste gitBu mesajı bildir
 
 
 
 
Yeni Üye
Mesaj
5
Kayıt
10 Şub 2012

Kişisel Sayfası

PermaLink10 Şub 2012  22:39

Arkadaşım Merhaba , 
Hatayı şurada yapıyorsun ; Kullanıcıdan bilgi almak için Kullandığın bileşen JOptionPane sınfından inputdialog kutusu. inputdialogtan girilen her bilgi String tipindedir. Senin int y demiş oldugun şey ise adı üzerinde Integer tipindedir. Yani sen burada kullanıcıdan aldıgın String bir ifadeyi ( örnek olarak 2 girsin) Integer olarak tanımladığın için problem çıkıyor. Demişsin  ki konsoldan yapınca program çalışıyor bir sıkıntı yok. Evet o zaman çalışır çünkü konsol ile inputdialog kutusu arasında fark var. Konsoldan " 2"  sayısını girersen bunun tipini programın kendisi integer olarak algılar ve y değişkenine atamada bir sıkıntı çıkmaz. Fakar dediğim gibi inputdialog kutusundan alırsan bilgiyi o zaman iş değişir. Inputdialogtan alınan her girdi String ' tir unutma. Senin o girilen sayıyı kullanman için önce integer tipine çevirmen gerekecek . Onun da nası yapıldığını aşağıdaki kod bloğunan anlarsın . Biraz uzun bir yazı oldu ama kafanın karışmasını istemediğim için açıkladım . İyi çalışmalar.

String bilgi = JOptionPane.showInputDialog("Personel Bilgileri#\n\n\n" + // dediğim gibi gelen her girdi stringtir. Onu da bilgi simli dtring bir değişkene atadık.
  "1.Personel :1.Kişi\n" +
  "2.Personel :2.Kişi\n" +
  "3.Personel :3.Kişi\n" +
  "Personel Bilgileri İçin Numarasını Giriniz.");
 

int y = Integer.parseInt(bilgi); // Burada da string tipindeki bilgiyi parseint metoduna parametre olarak gönderdik ve integer tipine çevrilmesine sağlayarak y değişkenine atadık .
En üste git
 

İlgili Konular

  Konu Başlığı Gönderen Yanıt Son Mesaj
 java java javaHPQ-User 4 19 Ağu 2011  15:54
 JAVA ile programlamaumuthvr 3 13 Tem 2009  03:01
 Java Programlama Egitimieyukselturk 0 05 Oca 2012  15:19
 Otomasyon Programlama Web Programlamammhrn 0 27 Haz 2011  10:00
 LÜTFEN YARDIM NEREDE HATA YAPIYORUM=(onurator 4 16 Haz 2009  01:36
Bu sayfa 0,64 saniye içinde hazırlandı.


 
Cep telefonları | Ekran kartları | Masaüstü | Notebook | Ses kartları | Webcam | Klavye & Fare | Yazıcılar | Tablet Ev Sineması
Mp3 Player | Usb Bellekler | Video kameralar | Fotoğraf Makinesi | Taşınabilir diskler | LED & LCD Tv | Monitörler | OEM | PDA
Navigasyon | Oyun Konsolu