Interesting and Cool Tricks in Java

Java is one of the best object-oriented programming 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.

  1. 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:
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    public class GFG {
        public static void main(String[] args)
        {
            // \u000d System.out.println("GeeksForGeeks");
        }
    }

    chevron_right

    
    

    Output:

    GeeksForGeeks
    

    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.

  2. 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:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    public class GFG {
        public static void main(String[] args)
        {
            int x = 123_34;
            System.out.println(x);
        }
    }

    chevron_right

    
    

    Output:



    12334
    
  3. 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:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    import java.util.HashSet;
    import java.util.Set;
      
    public class GFG {
        public static void main(String[] args)
        {
            Set<String> GFG = new HashSet<String>() {{
                add("DS");
                add("ALGORITHMS");
                add("BLOCKCHAIN");
                add("MACHINE LEARNING");
            } };
            System.out.println(GFG);
        }
    }

    chevron_right

    
    

    Output:

    [MACHINE LEARNING, ALGORITHMS, DS, BLOCKCHAIN]
    
  4. 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:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    import java.util.Arrays;
    public class GFG {
        public static void main(String[] args)
        {
            int[] arr = new int[] { 1, 3, 4, 5, 6 };
      
            // 2 has to be inserted
            int pos = Arrays.binarySearch(arr, 2);
            System.out.print("Element has to be inserted at: "
                                                      + ~pos);
        }
    }

    chevron_right

    
    

    Output:

    Element has to be inserted at: 1
    
  5. 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.
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    import java.util.Arrays;
    public class GFG {
        public static void main(String[] args)
        {
            int num_1 = 10;
      
            int num_2 = 10;
      
            Integer wrapnum_1 = new Integer(10);
      
            Integer wrapnum_2 = new Integer(10);
      
            System.out.println(num_1 == num_2);
      
            // Compares reference
            System.out.println(wrapnum_1 == wrapnum_2);
      
            // Compares value of object
            System.out.println(wrapnum_1.equals(wrapnum_2));
        }
    }

    chevron_right

    
    

    Output:

    true
    false
    true
    
  6. Attention reader! Don’t stop learning now. Get hold of all the important Java and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.




    My Personal Notes arrow_drop_up

    Blockchain Enthusiast

    If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

    Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


    Article Tags :
    Practice Tags :


    6


    Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.