الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اسئلة مبتدئ في الجافا

مغلق
بدأه أحمد الجفري في 26 مايو 2002 · 7 رد · 1,288 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم جميعا

انا مبتدئ في الجافا ولدي سؤال طبعا حول الـconsol

import java.io.*;
import java.lang.System;
public class Class1
{

	public static void main (String[] args)throws IOException 
	{
		System.out.println("Enter your name :");
		System.in.read();
		System.out.println("Enter your age :");
		System.out.flush();
		String name;
		int age;
		BufferedReader keyboardInput =
		new BufferedReader (new InputStreamReader(System.in));
		name = keyboardInput.readLine();
		age = keyboardInput.readLine();
		System.out.println("your name is "+name);
		System.out.println("Your age is :" +age);

		System.in.read();
	}
}

المشكلة ان رسالة الخطأ تخبرني من عدم تحويل الـString إلى int

فما الحل ؟؟؟

شي آخر ماهو فائدة

System.out.flush

شاكرا لكم تعاونكم

#2
this will convert the string to integer
age = Integer.parseInt(keyboardInput.readLine());

Tahiyati

Madani

#3

صح على مدني ...

الtype حق القيمة اللي المرجعة Return value للميثود readLine() دائما String ولازم تحوله مثل ما أسلف الأخ فوق.

طريقة في القراءة غريبة نوعا ما وأنا أحبذ أنك تغير برنامجك إلى ما يلي ...

[Code2]import java.io.*;

import java.lang.System;

public class Class1

{

public static void main (String[] args)throws IOException

{

String name;

int age;

BufferedReader keyboardInput = new BufferedReader (new InputStreamReader(System.in));

System.out.println("Enter your name :");

name = keyboardInput.readLine();

System.out.println("Enter your age :");

age = Integer.parseInt(keyboardInput.readLine());

System.out.println("your name is "+name);

System.out.println("Your age is :" +age);

}

}

[/Code2]

لأن برنامجك يخزن ال Input في ستريم واحد ويقراه بعدين ...

طريقتي أحسن تقرأ كلinput على حده وتخزنه في متغيره

ملاحظة :

هناك خطأ في برنامجك الأصلي لأنه لا يطبع الحرف الأول من الأسم :(

لكن البرنامج الي أنا حاطه شغال تمام.

أخوك

عادل

#4

أشكركما على ردكما فقد عمل البرنامج بنجاح .. اما بخصوص ان الحرف الاول لا يظهر من الاسم فالامر غريب لانه يظهر لدي ... عموما اكرر شكري (f)

#5

واليك هذا باختصار

import javax.swing.*;

public class Information {

  public static void main(String args[]) {

    String name = JOptionPane.showInputDialog("Enter you name please ");
    String age =  JOptionPane.showInputDialog("Enter your age please ");
    int me =Integer.parseInt(age);
    JOptionPane.showMessageDialog(null,"your name is : " + name.toUpperCase() +"n"+
                                   "your age is : " + age );
  }
}

وهذا اذا اردت البرنامج يسأل بالعربيه

import javax.swing.*;

public class Information {

  public static void main(String args[]) {

    String name = JOptionPane.showInputDialog("u0627u0643u062Au0628 u0627u0633u0645u0643 u0631u062Cu0627u0621u0627 ");
    String age =  JOptionPane.showInputDialog("u0627u0643u062Au0628 u0639u0645u0631u0643  ");
    int me =Integer.parseInt(age);
    JOptionPane.showMessageDialog(null,"u0627u0644u0627u0633u0645 u0647u0648 : " + name.toUpperCase() +"n"+
                                   "u0648u0627u0644u0639u0645u0631 : " + age );
  }
}
#6

شكرا لك يا Learner و مرحبا بك فى معسكر الجافا ;)

خالد

#8

احنا مش قد زعلك أخ صلاح :)

استخدم الوسمات من غير المسافات الموجودة فى كل وسم

[code2 ]

[/code2 ]

سأعدل الرد حتى يستطيع الأخوة قراءة الكود

خالد

هذا الموضوع مغلق.

مواضيع مشابهة