8 Lesser-Known Java Methods You Should Definitely Know About
Written on
Chapter 1: Introduction to Java Methods
Methods play a crucial role in programming, acting as shortcuts that simplify and organize the code. In Java, many complex algorithms and mathematical operations are encapsulated in built-in methods, allowing developers to save time by avoiding the need to write everything from scratch.
Having a variety of methods and classes at your disposal is essential for efficient coding. Understanding these methods can significantly enhance your programming effectiveness. However, numerous useful methods in Java are rarely utilized. Below, we explore eight such methods that can save time and simplify your code.
Section 1.1: incrementExact()
The incrementExact() method is part of the Math class and simply returns the input number incremented by one. For instance, if you provide 5 as an argument, it will return 6. However, be cautious of potential overflow if the input number is at its maximum limit.
Syntax:
Math.incrementExact(number);
Example:
System.out.println(Math.incrementExact(10)); // Output: 11
Section 1.2: IEEEremainder()
The IEEEremainder() method, also part of the Math class, calculates the remainder of two numbers based on the IEEE 754 standard. This method takes two arguments: a dividend and a divisor, and it returns the remainder following the standard's specific guidelines.
Syntax:
Math.IEEEremainder(dividend, divisor);
Example:
System.out.println(Math.IEEEremainder(13, 7)); // Output: -1.0
The first video titled "Java Beginner Course #8: Methods" provides a great overview of methods and their usage in Java programming.
Section 1.3: expm1()
The expm1() method calculates the result of (e^x) - 1 and returns it as a double. Here, e represents the base of natural logarithms.
Syntax:
Math.expm1(x);
Example:
double result = Math.expm1(3);
System.out.println(result); // Output: 19.085536923187668
Section 1.4: getCurrencyCode()
The getCurrencyCode() method belongs to the Currency class and returns the currency code for a specified currency object. This is particularly useful in financial applications.
Syntax:
currency.getCurrencyCode();
Example:
Currency japan = Currency.getInstance("JPY");
System.out.println(japan.getCurrencyCode()); // Output: JPY
The second video titled "Method Reference In Java 8 - How it really works?" dives deeper into method references and their practical applications.
Section 1.5: equalsIgnoreCase()
The equalsIgnoreCase() method compares two strings in a case-insensitive manner, returning true if they are equal, regardless of their case.
Syntax:
String.equalsIgnoreCase(anotherString);
Example:
String str1 = "tandrew";
String str2 = "tanDReW";
System.out.print("equalsIgnoreCase: " + str1.equalsIgnoreCase(str2)); // Output: true
Section 1.6: getAverage()
The getAverage() method is part of the DoubleSummaryStatistics class and calculates the average of stored values. This can save time for programmers typically writing their own average calculation methods.
Syntax:
DoubleSummaryStatisticsObj.getAverage();
Example:
DoubleSummaryStatistics stats = new DoubleSummaryStatistics();
stats.accept(1);
stats.accept(2);
stats.accept(3);
System.out.println("Average: " + stats.getAverage()); // Output: Average: 2.0
Section 1.7: ensureCapacity()
The ensureCapacity() method is used with the ArrayList class to increase its capacity to hold a specified number of elements.
Syntax:
ArrayList.ensureCapacity(minimumCapacity);
Example:
ArrayList list = new ArrayList<>();
list.ensureCapacity(500);
Section 1.8: absExact()
The absExact() method returns the absolute value of a number, but only if it is representable within its data type (int or long). An ArithmeticException will be thrown if the absolute value causes an overflow.
Syntax:
Math.absExact(number);
Example:
System.out.println(Math.absExact(Integer.MIN_VALUE)); // Throws ArithmeticException
Conclusion
While many of these methods may not be frequently used, being aware of them can enhance your programming experience. Throughout your career, you will likely encounter various projects where these methods can be invaluable.
Programming can be time-consuming to learn and implement. Thus, maximizing efficiency is crucial. Familiarizing yourself with the built-in methods available in your programming language can improve your problem-solving skills and deepen your understanding of new concepts.
Thank you for reading! Be sure to follow and subscribe to Shu Hasegawa for more programming tips, tutorials, and stories. If you found this article helpful, please share it with others.