{"id":2711,"date":"2025-12-23T10:00:15","date_gmt":"2025-12-23T15:00:15","guid":{"rendered":"https:\/\/www.mymiller.name\/wordpress\/?p=2711"},"modified":"2025-12-23T10:00:15","modified_gmt":"2025-12-23T15:00:15","slug":"listutils-size","status":"publish","type":"post","link":"https:\/\/www.mymiller.name\/wordpress\/lists\/listutils-size\/","title":{"rendered":"ListUtils.size()"},"content":{"rendered":"\n<p>Several times recently I had a need where I needed to know if a List, contained at least X elements.  The list could be null, empty or any size imaginable.  However, I only wanted to act if it contained at least X elements. <\/p>\n\n\n\n<p>After thinking about it for a few minutes, I pulled out my <a href=\"https:\/\/www.mymiller.name\/wordpress\/programming\/java\/list-intersection-union-unique\/\" target=\"_blank\" rel=\"noreferrer noopener\">ListUtils <\/a>class I had created and added a new method.  I created a new size() static method that would return 0 if the list was null, otherwise, return List::size() value to indicate the size of the list.  A simple method that would save me a lot of redundant code.<\/p>\n\n\n\n<p>Of course I could have something like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if(ListUtils.notEmpty(myList) &amp;&amp; myList.size > X) {\n    ....\n}<\/code><\/pre>\n\n\n\n<p>However I find this easier to read follow and just a little simpler:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if(ListUtils.size(myList) > X) {\n    ....\n}<\/code><\/pre>\n\n\n\n<p>As I said this isn&#8217;t rocket science.  Just a simple couple lines for the method:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> \/**\n     * Returns the number of elements in the list.  Checks for Null.\n     * @param list List to check\n     * @param &lt;E> List Type\n     * @return int indicating the number of elements or 0 if null.\n     *\/\n    public static &lt;E> int size( List&lt;E> list) {\n        if(list == null) {\n            return 0;\n        }\n        return list.size();\n    }<\/code><\/pre>\n\n\n\n<p>For the complete implementation of my this class check out this <a href=\"https:\/\/gist.github.com\/Ghost-Programmer\/8caa01aa7db3639caaa94564cdb8bfe5\">GIST<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Simple yet handy method for your ListUtils class.  Handle if null, and return the number of elements in the list. Effective and simple.<\/p>\n","protected":false},"author":1,"featured_media":2712,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[455],"tags":[69],"series":[287],"class_list":["post-2711","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-lists","tag-java-2","series-listutils"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/number-703136_640.jpg?fit=640%2C426&ssl=1","jetpack-related-posts":[{"id":2736,"url":"https:\/\/www.mymiller.name\/wordpress\/lists\/listutils-safe\/","url_meta":{"origin":2711,"position":0},"title":"ListUtils.safe()","author":"Jeffery Miller","date":"December 24, 2025","format":false,"excerpt":"Sometimes you need to guarantee a list is safe to use. A simple method can make sure your safe to use the list, or have an empty list that would be safe for use. \/** * Guarantees a list will be safe to use, even if null. * @param list\u2026","rel":"","context":"In &quot;Lists&quot;","block_context":{"text":"Lists","link":"https:\/\/www.mymiller.name\/wordpress\/category\/lists\/"},"img":{"alt_text":"Keeping Containers Safe","src":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/rappelling-755399_640.jpg?fit=640%2C480&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/rappelling-755399_640.jpg?fit=640%2C480&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/rappelling-755399_640.jpg?fit=640%2C480&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":2717,"url":"https:\/\/www.mymiller.name\/wordpress\/lists\/listutils-isempty-notempty\/","url_meta":{"origin":2711,"position":1},"title":"ListUtils isEmpty() &#038; notEmpty()","author":"Jeffery Miller","date":"December 23, 2025","format":false,"excerpt":"Standard isEmpty() and notEmpty() methods for a ListUtils class. Nothing fancy, just simple methods and functionality. See the entire ListUtils series.","rel":"","context":"In &quot;Lists&quot;","block_context":{"text":"Lists","link":"https:\/\/www.mymiller.name\/wordpress\/category\/lists\/"},"img":{"alt_text":"empty container?","src":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/soda-4017612_640.jpg?fit=640%2C429&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/soda-4017612_640.jpg?fit=640%2C429&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/soda-4017612_640.jpg?fit=640%2C429&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":2739,"url":"https:\/\/www.mymiller.name\/wordpress\/lists\/listutils-page\/","url_meta":{"origin":2711,"position":2},"title":"ListUtils Page","author":"Jeffery Miller","date":"December 24, 2025","format":false,"excerpt":"Ever have a list, that you need to paginate through? I certainly have, I created a simple method to ListUtils to make it easier. \/** * Performs pagination on the List, returning the indicated page of elements, or an empty ist. * @param list List to paginate * @param pageSize\u2026","rel":"","context":"In &quot;Lists&quot;","block_context":{"text":"Lists","link":"https:\/\/www.mymiller.name\/wordpress\/category\/lists\/"},"img":{"alt_text":"Pick a page","src":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/books-1245690_640.jpg?fit=640%2C426&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/books-1245690_640.jpg?fit=640%2C426&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2020\/04\/books-1245690_640.jpg?fit=640%2C426&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":3140,"url":"https:\/\/www.mymiller.name\/wordpress\/lists\/listutils-iterate\/","url_meta":{"origin":2711,"position":3},"title":"ListUtils.iterate()","author":"Jeffery Miller","date":"December 24, 2025","format":false,"excerpt":"Ever have one of those objects that want to give you an iterator and don't have a method for getting it as a list? Well created another new method for my ListUtils class. ListUtils::iteratre() it takes an iterator and converts it into a List for you. \/** * Convert and\u2026","rel":"","context":"In &quot;Lists&quot;","block_context":{"text":"Lists","link":"https:\/\/www.mymiller.name\/wordpress\/category\/lists\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2022\/01\/castles-ga8e4bd9a6_640.jpg?fit=640%2C360&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2022\/01\/castles-ga8e4bd9a6_640.jpg?fit=640%2C360&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2022\/01\/castles-ga8e4bd9a6_640.jpg?fit=640%2C360&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":2632,"url":"https:\/\/www.mymiller.name\/wordpress\/lists\/list-intersection-union-unique\/","url_meta":{"origin":2711,"position":4},"title":"List Intersection, Union, &#038; Unique","author":"Jeffery Miller","date":"December 23, 2025","format":false,"excerpt":"Ever have two lists that you need to pull the unique elements from? Or need to pull the elements in both? Here is a ListUtils class for doing just those steps. package name.mymiller.extensions.utils; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; \/** * * @author jmiller Provide a set of utilities to\u2026","rel":"","context":"In &quot;Lists&quot;","block_context":{"text":"Lists","link":"https:\/\/www.mymiller.name\/wordpress\/category\/lists\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2019\/09\/grocery-list-1670408_640.jpg?fit=640%2C426&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2019\/09\/grocery-list-1670408_640.jpg?fit=640%2C426&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2019\/09\/grocery-list-1670408_640.jpg?fit=640%2C426&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":2459,"url":"https:\/\/www.mymiller.name\/wordpress\/java_tips\/not-returning-null\/","url_meta":{"origin":2711,"position":5},"title":"Not Returning Null","author":"Jeffery Miller","date":"December 23, 2025","format":false,"excerpt":"We all have done it, in fact, I'm in the process of changing my APIs over to not do.\u00a0 Returning NULL for a return type.\u00a0 After doing some work with streams, I see that return NULL often adds additional complexity to the code.\u00a0 In this article, we are going to\u2026","rel":"","context":"In &quot;Java Tips&quot;","block_context":{"text":"Java Tips","link":"https:\/\/www.mymiller.name\/wordpress\/category\/java_tips\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2018\/11\/paper-3204064_640.jpg?fit=640%2C372&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2018\/11\/paper-3204064_640.jpg?fit=640%2C372&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.mymiller.name\/wordpress\/wp-content\/uploads\/2018\/11\/paper-3204064_640.jpg?fit=640%2C372&ssl=1&resize=525%2C300 1.5x"},"classes":[]}],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/posts\/2711","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/comments?post=2711"}],"version-history":[{"count":2,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/posts\/2711\/revisions"}],"predecessor-version":[{"id":2715,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/posts\/2711\/revisions\/2715"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/media\/2712"}],"wp:attachment":[{"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/media?parent=2711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/categories?post=2711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/tags?post=2711"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/www.mymiller.name\/wordpress\/wp-json\/wp\/v2\/series?post=2711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}