কিভাবে জাভাতে একজন ব্যবহারকারীর কাছ থেকে ইনপুট পাবেন (ছবি সহ)

সুচিপত্র:

কিভাবে জাভাতে একজন ব্যবহারকারীর কাছ থেকে ইনপুট পাবেন (ছবি সহ)
কিভাবে জাভাতে একজন ব্যবহারকারীর কাছ থেকে ইনপুট পাবেন (ছবি সহ)

ভিডিও: কিভাবে জাভাতে একজন ব্যবহারকারীর কাছ থেকে ইনপুট পাবেন (ছবি সহ)

ভিডিও: কিভাবে জাভাতে একজন ব্যবহারকারীর কাছ থেকে ইনপুট পাবেন (ছবি সহ)
ভিডিও: প্লেগ ইনকর্পোরেটেড: নিরাময় - প্রিয়ন মেগা-ব্রুটাল ​​গাইড 2024, মে
Anonim

জাভা বা অন্য কোন ভাষায় প্রোগ্রামিং করার সময়, আপনাকে সম্ভবত একজন ব্যবহারকারীর কাছ থেকে ইনপুট তথ্য ব্যবহার করতে হবে। জাভা ব্যবহারকারীর তথ্য পাওয়ার জন্য বিভিন্ন পদ্ধতি প্রদান করে, কিন্তু সবচেয়ে সাধারণ এবং সম্ভবত বাস্তবায়নের পদ্ধতিটি হল স্ক্যানার বস্তু ব্যবহার করা।

ধাপ

2 এর 1 পদ্ধতি: ভিডিও

1514756 1
1514756 1

ধাপ 1. স্ক্যানার ক্লাস আমদানি করুন।

আপনি হয় আমদানি করতে বেছে নিতে পারেন

java.util. Scanner

ক্লাস বা পুরো

java.util

প্যাকেজ একটি ক্লাস বা একটি প্যাকেজ আমদানি করতে, আপনার কোডের একেবারে শুরুতে নিম্নলিখিত লাইনগুলির মধ্যে একটি যোগ করুন:

    java.util. Scanner আমদানি করুন; // এটি শুধু স্ক্যানার ক্লাস আমদানি করবে। আমদানি java.util।*; // এটি সম্পূর্ণ java.util প্যাকেজ আমদানি করবে।

1514756 2
1514756 2

ধাপ 2. পাস করে একটি নতুন স্ক্যানার বস্তু শুরু করুন

System.in

কনস্ট্রাক্টরের কাছে ইনপুট স্ট্রিম।

System.in

স্ট্যান্ডার্ড ইনপুট স্ট্রিম যা ইতিমধ্যে খোলা এবং ইনপুট ডেটা সরবরাহের জন্য প্রস্তুত। সাধারণত এই স্ট্রিমটি কীবোর্ড ইনপুটের সাথে মিলে যায়।

    স্ক্যানার userInputScanner = নতুন স্ক্যানার (System.in);

1514756 3
1514756 3

ধাপ 3. ব্যবহারকারীর প্রবেশের বিভিন্ন ধরণের ইনপুট ডেটা পড়ুন।

স্ক্যানার ক্লাস স্ট্রিং পাওয়ার পাশাপাশি int, বাইট, শর্ট, লং এর মতো আদিমতা পেতে সমর্থন করে।

  • এখানে কিছু পদ্ধতি যা স্ক্যানার ক্লাসের মাধ্যমে পাওয়া যায়:

    • একটি বাইট পড়ুন -

      NextByte ()

    • একটি সংক্ষিপ্ত পড়ুন -

      nextShort ()

    • একটি int পড়ুন -

      nextInt ()

    • বরাবর পড়া -

      পরবর্তী দীর্ঘ ()

    • একটি ভাসা পড়ুন -

      nextFloat ()

    • একটি ডবল পড়ুন -

      পরের ডাবল ()

    • একটি বুলিয়ান পড়ুন -

      পরবর্তী বুলিয়ান ()

    • একটি সম্পূর্ণ লাইন পড়ুন -

      নেক্সট লাইন ()

    • একটি শব্দ পড়ুন -

      পরবর্তী()

  • এখানে একটি প্রোগ্রামের উদাহরণ যা বিভিন্ন ধরণের ইনপুট পেতে স্ক্যানার ক্লাসের বিভিন্ন পদ্ধতি ব্যবহার করে:

      java.util. Scanner আমদানি করুন; public class ScannerExample {public static void main (String args) {// Initiate a new Scanner Scanner userInputScanner = নতুন স্ক্যানার (System.in); // পরের লাইন পরীক্ষা (); System.out.println ("\ n তোমার নাম কি?"); স্ট্রিং নাম = userInputScanner.nextLine (); // টেস্টিং nextInt (); System.out.print ("আপনার কতগুলি বিড়াল আছে?"); int numberOfCats = userInputScanner.nextInt (); // পরের ডাবল পরীক্ষা (); System.out.print ("আপনার মানিব্যাগে কত টাকা আছে? $"); দ্বিগুণ টাকা System.out.println ("el n হ্যালো" + নাম + "! আপনার ওয়ালেটে" + numberOfCats + (numberOfCats> 1? "Cats": "cat") + "এবং $" + moneyInWallet + "আছে। / n"); }}

2 এর পদ্ধতি 2: ব্যতিক্রমগুলি পরিচালনা করা

1514756 4
1514756 4

ধাপ 1. ইনপুট ব্যতিক্রমগুলি পরিচালনা করুন।

একটি

InputMismatchException

নিক্ষিপ্ত হয় যখন ব্যবহারকারী এমন ডেটা প্রবেশ করে যা অনুরোধকৃত প্রকারের সাথে মেলে না। উদাহরণস্বরূপ, যদি ব্যবহারকারী একটি স্ট্রিং প্রবেশ করে যখন একটি int জিজ্ঞাসা করা হয়, প্রোগ্রামটি একটি নিক্ষেপ করবে

InputMismatchException

এবং প্রস্থান এই ব্যতিক্রমটি পরিচালনা করার এবং এই সমস্যা সমাধানের বিভিন্ন উপায় রয়েছে যাতে আপনার প্রোগ্রামটি নির্বোধ হতে পারে।

1514756 5
1514756 5

ধাপ ২. হ্যান্ডেল করার জন্য ট্রাই-ক্যাচ ব্লক ব্যবহার করুন

InputMismatchException

.

    java.util. InputMismatchException আমদানি করুন; java.util. Scanner আমদানি করুন; public class ScannerExample {public static void main (String args) {// Initiate a new Scanner Scanner userInputScanner = নতুন স্ক্যানার (System.in); // পরের লাইন পরীক্ষা (); System.out.print ("\ n আপনার নাম কি?"); স্ট্রিং নাম = userInputScanner.nextLine (); // টেস্টিং nextInt (); বুলিয়ান বৈধ ইনপুট = মিথ্যা; int numberOfCats = 0; while (! validInput) {System.out.print ("আপনার কতগুলি বিড়াল আছে?"); চেষ্টা করুন {numberOfCats = userInputScanner.nextInt (); বৈধ ইনপুট = সত্য; } ধরা (InputMismatchException e) {validInput = false; userInputScanner.nextLine (); }} // পরের ডাবল পরীক্ষা করা (); বৈধ ইনপুট = মিথ্যা; ডাবল মানিওয়ালেট = 0.0; while (! validInput) {System.out.print ("আপনার মানিব্যাগে কত টাকা আছে? $"); চেষ্টা করুন {moneyInWallet = userInputScanner.nextDouble (); userInputScanner.nextLine (); বৈধ ইনপুট = সত্য; } ধরা (InputMismatchException e) {validInput = false; userInputScanner.nextLine (); }} System.out.println ("el n হ্যালো" + নাম + "! আপনার মানিব্যাগে" + numberOfCats + (numberOfCats> 1? "Cats": "cat") + "এবং $" + moneyInWallet + "আছে। n "); }}

  • মনে রাখবেন আমাদের আমদানি করতে হবে

    java.util. InputMismatchException

    ব্যবহার করার জন্য

    InputMismatchException

  • শ্রেণী
  • ব্যবহারকারী সঠিক ইনপুট প্রবেশ না করা পর্যন্ত আমরা ব্যবহারকারীকে একই প্রশ্ন জিজ্ঞাসা করার জন্য আমরা একটি সময় লুপ ব্যবহার করছি।
  • যোগ করা হচ্ছে

    userInputScanner.nextLine ();

  • ট্রাই-ক্যাচের ক্যাচ অংশে নিশ্চিত করা হয় যে স্ক্যানার ব্যবহারকারীর "এন্টার" কী প্রেস স্বীকার করে এবং ইনপুট বাফার সাফ করার উপায় হিসাবে কাজ করে।
1514756 6
1514756 6

ধাপ Al। বিকল্পভাবে, ব্যবহারকারীর ইনপুটকে কেবল স্ক্যানার থেকে পরবর্তী লাইনগুলোতে নিখুঁত করে তুলুন

এইভাবে, আমরা নিশ্চিত করতে পারি যে স্ক্যানার ফেরত দেয় এমন সবকিছুই একটি স্ট্রিং বস্তু এবং কোনও ব্যতিক্রম তৈরি করবে না। তারপরে, স্ট্রিংগুলিকে পূর্ণসংখ্যা বা দ্বিগুণে রূপান্তর করতে, আমরা পূর্ণসংখ্যা এবং ডবল মোড়ক শ্রেণী ব্যবহার করতে পারি।

    java.util. Scanner আমদানি করুন; public class ScannerExample {public static void main (String args) {// একটি নতুন স্ক্যানার স্ক্যানার userInputScanner = নতুন স্ক্যানার (System.in) শুরু করুন; // পরের লাইন পরীক্ষা (); System.out.print ("\ n তোমার নাম কি?"); স্ট্রিং নাম = userInputScanner.nextLine (); // টেস্টিং nextInt (); বুলিয়ান বৈধ ইনপুট = মিথ্যা; int numberOfCats = 0; while (! validInput) {System.out.print ("আপনার কতগুলি বিড়াল আছে?"); স্ট্রিং ইনপুট = userInputScanner.nextLine (); চেষ্টা করুন {numberOfCats = Integer.parseInt (ইনপুট); বৈধ ইনপুট = সত্য; } catch (NumberFormatException e) {validInput = false; }} // পরের ডাবল পরীক্ষা করা (); বৈধ ইনপুট = মিথ্যা; ডাবল মানিওয়ালেট = 0.0; while (! validInput) {System.out.print ("আপনার মানিব্যাগে কত টাকা আছে? $"); স্ট্রিং ইনপুট = userInputScanner.nextLine (); চেষ্টা করুন {moneyInWallet = Double.parseDouble (ইনপুট); বৈধ ইনপুট = সত্য; } catch (NumberFormatException e) {validInput = false; }} System.out.println ("el n হ্যালো" + নাম + "! আপনার মানিব্যাগে" + numberOfCats + (numberOfCats> 1? "Cats": "cat") + "এবং $" + moneyInWallet + "আছে। n "); }}

  • মনে রাখবেন যে এখানে আমাদের আমদানি করতে হয়নি

    NumberFormatException

  • শ্রেণী কারণ এটি java.lang প্যাকেজের অংশ, যার অর্থ এটি অন্তর্নির্মিত।
  • আমাদের বাফার ব্যবহার করেও সাফ করতে হয়নি

    userInputScanner.nextLine ();

  • ট্রাই-ক্যাচের ক্যাচ অংশে।

পরামর্শ

  • স্ক্যানার ক্লাস ব্যবহার করার বিষয়ে আরও তথ্যের জন্য স্ক্যানার API দেখুন।
  • সবসময় পরের শব্দটি পড়ার জন্য.nextLine () এর পরিবর্তে.next () ব্যবহার করুন, যেহেতু.nextLine () বাগি হতে পারে।

প্রস্তাবিত: