Java Technologies IntMath এবং LongMath এর ব্যবহার গাইড ও নোট

348

Guava লাইব্রেরির IntMath এবং LongMath ক্লাস দুটি ব্যবহার করে int এবং long টাইপের গাণিতিক অপারেশনগুলো সহজ ও কার্যকরভাবে করা যায়। এই ক্লাসগুলো বিশেষভাবে কমন গাণিতিক সমস্যার সমাধানে সাহায্য করে, যেমন গুণনীয়ক (factorial), বর্গমূল (square root), পূর্ণসংখ্যার জন্য লজিক্যাল অপারেশন ইত্যাদি। Guava লাইব্রেরি এই ক্লাসগুলির মাধ্যমে গাণিতিক কাজগুলোকে আরও কার্যকরী এবং সহজ করে তোলে।


IntMath ক্লাস

IntMath ক্লাসটি int টাইপের গাণিতিক অপারেশন সমাধান করতে ব্যবহৃত হয়। এই ক্লাসে বেশ কিছু সহায়ক মেথড রয়েছে, যা int টাইপের মানের জন্য প্রযোজ্য গাণিতিক কাজগুলো দ্রুত ও কার্যকরভাবে করা যায়।


IntMath এর প্রধান মেথডসমূহ

factorial()

এই মেথডটি একটি পূর্ণসংখ্যার ফ্যাক্টরিয়াল বের করতে ব্যবহৃত হয়। int টাইপের সংখ্যার জন্য এটি অত্যন্ত দ্রুত কাজ করে।

import com.google.common.math.IntMath;
import java.math.BigInteger;

public class IntMathExample {
    public static void main(String[] args) {
        // Find the factorial of 5
        BigInteger result = IntMath.factorial(5);
        System.out.println("Factorial of 5 is: " + result);
    }
}

isPowerOfTwo()

এই মেথডটি চেক করে যে একটি int মান দুটি পাওয়ার (power of two) কিনা।

import com.google.common.math.IntMath;

public class IntMathPowerOfTwoExample {
    public static void main(String[] args) {
        // Check if 8 is a power of two
        System.out.println(IntMath.isPowerOfTwo(8)); // true
        System.out.println(IntMath.isPowerOfTwo(10)); // false
    }
}

sqrt()

এই মেথডটি একটি int সংখ্যার বর্গমূল (square root) বের করতে ব্যবহৃত হয়।

import com.google.common.math.IntMath;

public class IntMathSqrtExample {
    public static void main(String[] args) {
        // Find the square root of 16
        int result = IntMath.sqrt(16, java.math.RoundingMode.FLOOR);
        System.out.println("Square root of 16 is: " + result);
    }
}

LongMath ক্লাস

LongMath ক্লাসটি long টাইপের গাণিতিক অপারেশন সমাধান করতে ব্যবহৃত হয়। IntMath এর মতোই, এই ক্লাসেও long টাইপের সংখ্যার জন্য বিভিন্ন গাণিতিক মেথড রয়েছে।


LongMath এর প্রধান মেথডসমূহ

factorial()

এই মেথডটি একটি long সংখ্যার ফ্যাক্টরিয়াল বের করতে ব্যবহৃত হয়। এটি বড় মানের গাণিতিক অপারেশনগুলোর জন্য ব্যবহৃত হয়, যেমন 20 বা তার বেশি সংখ্যার ফ্যাক্টরিয়াল।

import com.google.common.math.LongMath;
import java.math.BigInteger;

public class LongMathExample {
    public static void main(String[] args) {
        // Find the factorial of 20
        BigInteger result = LongMath.factorial(20);
        System.out.println("Factorial of 20 is: " + result);
    }
}

isPowerOfTwo()

এই মেথডটি চেক করে যে একটি long মান দুটি পাওয়ার (power of two) কিনা।

import com.google.common.math.LongMath;

public class LongMathPowerOfTwoExample {
    public static void main(String[] args) {
        // Check if 64 is a power of two
        System.out.println(LongMath.isPowerOfTwo(64)); // true
        System.out.println(LongMath.isPowerOfTwo(70)); // false
    }
}

sqrt()

এই মেথডটি একটি long সংখ্যার বর্গমূল (square root) বের করতে ব্যবহৃত হয়।

import com.google.common.math.LongMath;

public class LongMathSqrtExample {
    public static void main(String[] args) {
        // Find the square root of 100
        long result = LongMath.sqrt(100, java.math.RoundingMode.FLOOR);
        System.out.println("Square root of 100 is: " + result);
    }
}

mod()

এই মেথডটি দুটি long সংখ্যার মধ্যে ভাগফল (modulus) বের করতে ব্যবহৃত হয়।

import com.google.common.math.LongMath;

public class LongMathModExample {
    public static void main(String[] args) {
        // Find the modulus of 25 and 7
        long result = LongMath.mod(25, 7);
        System.out.println("25 % 7 is: " + result);
    }
}

IntMath এবং LongMath এর সুবিধা

  1. দ্রুত গাণিতিক অপারেশন: IntMath এবং LongMath ক্লাসের মেথডগুলি অত্যন্ত দ্রুত এবং কার্যকরী গাণিতিক অপারেশন সরবরাহ করে।
  2. বড় সংখ্যা পরিচালনা: এই ক্লাসগুলিতে বড় সংখ্যা এবং ফ্যাক্টরিয়াল, বর্গমূলসহ অন্যান্য জটিল গাণিতিক কাজ করার জন্য প্রয়োজনীয় ফাংশনালিটি রয়েছে।
  3. স্ট্যান্ডার্ড লাইব্রেরি থেকে সহজ: Guava লাইব্রেরি ব্যবহার করে ইনপুট ভ্যালিডেশন এবং গাণিতিক কাজগুলো সহজেই করা যায়, যা সাধারণ Java লাইব্রেরির সাথে তুলনা করলে অনেক বেশি কার্যকর।
  4. গাণিতিক স্ট্যাটিক মেথড: এই ক্লাসগুলো বিভিন্ন গাণিতিক সমস্যা দ্রুত সমাধান করতে সহায়তা করে, যেমন বর্গমূল বের করা, ফ্যাক্টরিয়াল হিসাব করা, বা পাওয়ার চেক করা।

IntMath এবং LongMath এর সীমাবদ্ধতা

  1. টাইপ সীমাবদ্ধতা: IntMath শুধুমাত্র int টাইপের সংখ্যার জন্য এবং LongMath শুধুমাত্র long টাইপের জন্য ব্যবহারযোগ্য। বড় মানের জন্য BigInteger ব্যবহার করা প্রয়োজন।
  2. উন্নত অপারেশন: কিছু জটিল গাণিতিক অপারেশন যেমন লগারিদমিক, কসমিক ইত্যাদি সমাধানের জন্য অন্যান্য লাইব্রেরি ব্যবহার করা প্রয়োজন হতে পারে।

IntMath এবং LongMath ক্লাসগুলি Guava লাইব্রেরির দুটি অত্যন্ত শক্তিশালী সরঞ্জাম, যা int এবং long টাইপের গাণিতিক অপারেশন সহজ এবং দ্রুত করে তোলে। এগুলি বিশেষভাবে সংখ্যা সম্পর্কিত জটিল গাণিতিক কাজগুলো দ্রুত এবং নির্ভুলভাবে সমাধান করতে ব্যবহৃত হয়।

Content added By
Promotion

Are you sure to start over?

Loading...