View Full Version : ورودی از کاربر
نغمه
دوشنبه 04 بهمن 1389, 14:02 عصر
اگر بخوام برنامه یک ورودی از کاربر بگیره بعد بر اساس ان ورودی به اجرا ادامه بده بعد از نوشتن دستور system.out.println باید چه دستوری بنویسم تا برنامه در خروجی مکث کنه تا از کاربر ورودی بگیره
saban56
دوشنبه 04 بهمن 1389, 14:35 عصر
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
نغمه
دوشنبه 04 بهمن 1389, 14:48 عصر
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
ورودی که ار کاربر می گیره در str ذخیره می شه؟ می شه بگید هریک از این دستورات چی کار می کنند
saban56
دوشنبه 04 بهمن 1389, 15:06 عصر
بله در str ذخیره میشه . من این رو به عنوان مثال نوشتم می شه در type های دیگه هم ذخیره کرد.
Scanner کلاسی برای گرفتن primitive types و String است. با اضافه کردن آرگومان System.in منتظرمی مونه کابر کاراکتر ها رو در کنسول تایپ کنه ، با زدن Enter انتهای ورودی مشخص میشه و ادامه کد اجرا می شه.
sc.nextline() هم خط فعلی رو return می کنه.
با متد close هم می تونیم در انتهای کار scanner رو ببندیم.
sc.close();
نغمه
چهارشنبه 06 بهمن 1389, 12:09 عصر
بله در str ذخیره میشه . من این رو به عنوان مثال نوشتم می شه در type های دیگه هم ذخیره کرد.
Scanner کلاسی برای گرفتن primitive types و String است. با اضافه کردن آرگومان System.in منتظرمی مونه کابر کاراکتر ها رو در کنسول تایپ کنه ، با زدن Enter انتهای ورودی مشخص میشه و ادامه کد اجرا می شه.
sc.nextline() هم خط فعلی رو return می کنه.
با متد close هم می تونیم در انتهای کار scanner رو ببندیم.
sc.close();
باید از sc.nextline استفاده کنیم نمی تونیم از همان مقداری که در sc ذخیره می شه استفاده کنیم
حتما باید در انتها با متد closeاسکنر را ببندیم؟
saban56
چهارشنبه 06 بهمن 1389, 21:42 عصر
خیر، باید حتما از متد هایی مانند nextLine() , nextInt(), nextDouble() و ... به ترتیب برای گرفتن String ، int ، double استفاده کنیم. این لینک لیست کاملی از این متد ها برای کار با scanner رو داره.
http://download.oracle.com/javase/1.5.0/docs/api/java/util/Scanner.html
اگر در برنامه دیگه به آبجکتی که از Scanner ساختیم نیاز نداشتیم ، باید حتما ببندیمش.
timer291
جمعه 08 بهمن 1389, 18:48 عصر
بله در str ذخیره میشه . من این رو به عنوان مثال نوشتم می شه در type های دیگه هم ذخیره کرد.
Scanner کلاسی برای گرفتن primitive types و String است. با اضافه کردن آرگومان System.in منتظرمی مونه کابر کاراکتر ها رو در کنسول تایپ کنه ، با زدن Enter انتهای ورودی مشخص میشه و ادامه کد اجرا می شه.
sc.nextline() هم خط فعلی رو return می کنه.
با متد close هم می تونیم در انتهای کار scanner رو ببندیم.
sc.close();
با nextLine یه خط از ورودی میخونه. حالا اگه بخوایم فقط یه کرکتر بگیریم باید چیکار کنیم؟ یعنی به محض وارد کردن اولین کرکتر، ادامه ی برنامه رو اجرا کنه...
jlover
شنبه 09 بهمن 1389, 07:46 صبح
با nextLine یه خط از ورودی میخونه. حالا اگه بخوایم فقط یه کرکتر بگیریم باید چیکار کنیم؟ یعنی به محض وارد کردن اولین کرکتر، ادامه ی برنامه رو اجرا کنه...
می تونید کاراکتر ورودی دریافت شده رو با یک null مقایسه کنید و در صورت عدم برابری، روالی که میل دارید رو فراخونی کنید. البته خودم امتحان نکردم، فقط به ذهنم رسیده...
timer291
شنبه 09 بهمن 1389, 23:56 عصر
می تونید کاراکتر ورودی دریافت شده رو با یک null مقایسه کنید و در صورت عدم برابری، روالی که میل دارید رو فراخونی کنید. البته خودم امتحان نکردم، فقط به ذهنم رسیده...
مشکل اینجاس که برنامه عملیات خوندن رو کی متوقف کنه ...با چه دستوری، بعد از ورود اولین کرکتر خوندن متوقف میشه؟
که بعد بخواد با null یا چیز دیگه ای مقایسه کنه...
jlover
یک شنبه 10 بهمن 1389, 01:02 صبح
مشکل اینجاس که برنامه عملیات خوندن رو کی متوقف کنه ...با چه دستوری، بعد از ورود اولین کرکتر خوندن متوقف میشه؟
که بعد بخواد با null یا چیز دیگه ای مقایسه کنه...
این سوال دیگریست!
چرا امتحان نمی کنید!؟
timer291
چهارشنبه 13 بهمن 1389, 18:20 عصر
این سوال دیگریست!
چرا امتحان نمی کنید!؟
اگه می دونستم چی رو باید امتحان کنم ، حتما این کارو میکردم!
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.