Interesting and Cool Tricks in Java

Java is one of the best
language developed by James Gosling from Sun Microsystems in the year 1991 and was publicly available in the year 1995. It is an interpreted programming language with platform independency making it one of the best programming language among all. In this article, we’ll see some interesting and cool tricks in Java.
- Executing Comments: Most of the developers think comments are never executed in a program and are used for ease in understanding the code. But, they are executed. For example:
Java
publicclassGFG {publicstaticvoidmain(String[] args){// \u000d System.out.println("GeeksForGeeks");}}OutputGeeksForGeeks
Explanation: This comment is executed because of Unicode character “\u000d” and java compiler parses this unicode character as a new line. Java allows using Unicode characters without encoding.
- Underscore in Numeric Literals: In Java SE 7 and above, underscores can be used in numeric literals without generating any warning or error in the output. Example:
Java
publicclassGFG {publicstaticvoidmain(String[] args){intx = 123_34;System.out.println(x);}}Output12334
- Double Brace Initialization: In Java, collections such as sets, lists, maps, etc. does not have a simple and easy way to initialize the values during declaration. Developers either push values into the collection or creates a static block for the constant collection. Using double brace initialization, collections can be initialized during declaration with less efforts and time. Example:
Java
importjava.util.HashSet;importjava.util.Set;publicclassGFG {publicstaticvoidmain(String[] args){Set<String> GFG =newHashSet<String>() {{add("DS");add("ALGORITHMS");add("BLOCKCHAIN");add("MACHINE LEARNING");} };System.out.println(GFG);}}Output[MACHINE LEARNING, ALGORITHMS, DS, BLOCKCHAIN]
- Finding a position to insert the numeric element in the array: There is a small cool trick to find the position where the requested element can be inserted in the sorted array. Example:
Java
importjava.util.Arrays;publicclassGFG {publicstaticvoidmain(String[] args){int[] arr =newint[] {1,3,4,5,6};// 2 has to be insertedintpos = Arrays.binarySearch(arr,2);System.out.print("Element has to be inserted at: "+ ~pos);}}OutputElement has to be inserted at: 1
- Wrapper class vs datatype: In the below example, the second print statement will not display true because reference of wrapper class objects are getting compared and not their values.
Java
importjava.util.Arrays;publicclassGFG {publicstaticvoidmain(String[] args){intnum_1 =10;intnum_2 =10;Integer wrapnum_1 =newInteger(10);Integer wrapnum_2 =newInteger(10);System.out.println(num_1 == num_2);// Compares referenceSystem.out.println(wrapnum_1 == wrapnum_2);// Compares value of objectSystem.out.println(wrapnum_1.equals(wrapnum_2));}}Outputtrue false true
Share your thoughts in the comments



