{"id":811,"date":"2018-06-18T19:32:14","date_gmt":"2018-06-18T16:32:14","guid":{"rendered":"http:\/\/www.coding-dude.com\/wp\/?p=811"},"modified":"2018-07-06T18:09:34","modified_gmt":"2018-07-06T15:09:34","slug":"autoboxing-in-java","status":"publish","type":"post","link":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/","title":{"rendered":"Autoboxing In Java &#8211; Java Integer == Integer &#8211; WTF moment with Java"},"content":{"rendered":"<div class=\"9db0862b9cf2e44f8d962262c5a80491\" data-index=\"1\" style=\"float: none; margin:10px 0 10px 0; text-align:center;\">\n<script type=\"text\/javascript\"><!--\r\ngoogle_ad_client = \"ca-pub-3421619882899259\";\r\n\/* Coding Dude Medium Banner *\/\r\ngoogle_ad_slot = \"2969896483\";\r\ngoogle_ad_width = 468;\r\ngoogle_ad_height = 60;\r\n\/\/-->\r\n<\/script>\r\n<script type=\"text\/javascript\"\r\nsrc=\"\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js\">\r\n<\/script>\n<\/div>\n<h2>Autoboxing in Java explained with examples<\/h2>\n<blockquote><p>In this post I will try to give you an example showing what <strong>autoboxing in Java<\/strong> is. This post is about a curious situation I encountered while debugging a Java application (not written by me). It was quite an &#8220;ahhh&#8221;\u00a0&#8220;ohhh&#8221; &#8220;wtf&#8221; moment regarding since I spent about an hour or so to figure out. I started investigating an ArrayIndexOutOfBoundsException and realized the the cause was that the index was searched in\u00a0a piece of code comparing two integers (Integer objects that is) by using Integer == Integer.<\/p><\/blockquote>\n<p>Consider the following piece of code:<\/p>\n<pre>...\r\nInteger index1 = 100;\r\nInteger index2 = 100;\r\n\r\nSystem.out.println(index1 == index2);\r\n\r\nindex1 = 200;\r\nindex2 = 200;\r\n\r\nSystem.out.println(index1 == index2);<\/pre>\n<pre>...<\/pre>\n<p>What do you think the output will be? If you say <em>false<\/em> and <em>false<\/em>, you would be wrong. If you say\u00a0<em>true<\/em> and <em>true<\/em>, you would be wrong again.<\/p>\n<h3><strong>The answer is <em>true<\/em> and\u00a0<em>false<\/em>. Quite surprising (to me at least it was).<\/strong><\/h3>\n<p>Well,<\/p>\n<p>I&#8217;ve been working intensely with Java for more than 12 years. J2EE applications and customization of the Liferay platform (eg.: <a href=\"\/\/www.coding-dude.com\/wp\/java\/liferay\/solving-owasp-security-vulnerabilities-in-liferay-6-0-x\/\">Solving Liferay OWASP vulnerabilities<\/a>).<\/p>\n<p>I have never come across the concept of autoboxing in Java.<\/p>\n<p>I know what you&#8217;ll say:<\/p>\n<p>&#8220;Then you should have studied harder&#8221;. Ok, maybe that&#8217;s true. But then, you found this post looking for information about autoboxing, so, it means that you don&#8217;t know enough about it either \ud83d\ude42<\/p>\n<p>In my early days as a Java programmer one of the first things I learned was that comparing objects using &#8220;==&#8221; is not a good idea since\u00a0that will compare references, and only if the 2 parts refer the same object then the equality is true. So that&#8217;s why in the example above you might think that the output is false in both cases.<\/p>\n<p>Also, whenever I see something like Integer == Integer I tend to change it to Integer.equals(Integer). In the case of the code I was analysing and doing pair-programming, one colleague of mine suggested that Integer == Integer should be the same as Integer.equals(Integer) since the JVM will use autoboxing and transform Integer to int. As I found out that is only partially true.<\/p>\n<h2>What Is Autoboxing In Java?<\/h2>\n<p><a href=\"\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/autoboxing-in-java.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-2659\" src=\"\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/autoboxing-in-java.png\" alt=\"autoboxing in java\" width=\"1010\" height=\"250\" srcset=\"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/autoboxing-in-java.png 1010w, https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/autoboxing-in-java-300x74.png 300w, https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/autoboxing-in-java-768x190.png 768w\" sizes=\"(max-width: 1010px) 100vw, 1010px\" \/><\/a><\/p>\n<p>The Integer object has its autoboxing mechanism implemented by using a caching mechanism but only for values between -128 and 127, therefore all objects with the value in this interval are referencing the same object. So when you do Integer ==\u00a0Integer JVM will use the cache of the Integer object which is implemented by the Integer&#8217;s private class IntegerCache.<\/p>\n<p>Another interesting fact is that you can actually configure the boundaries for this interval. You can do this 2 ways:<\/p>\n<p>1. <strong>-D<span style=\"color: #000000;\">java.lang.Integer.IntegerCache.high=NEWHIGHVALUE\u00a0<\/span><\/strong><span style=\"color: #000000;\">&#8211; add this argument to the JVM with the NEWHIGHVALUE with the value of your choice. This will directly configure the Integer&#8217;s caching mechanism.<\/span><\/p>\n<p>2.\u00a0<strong><span style=\"color: #222222;\">-XX:AutoBoxCacheMax=NEWVALUE<\/span><\/strong><span style=\"color: #222222;\">\u00a0&#8211; this will alter the autobox behaviour of the JVM (autoboxing is the mechanism through which objects are treated as their primitive couterparts &#8211; in this case Integer as int);\u00a0<\/span><\/p>\n<p>To be honest I tried to find some documentation about autoboxing in Java by browsing the <a href=\"https:\/\/docs.oracle.com\/javase\/8\/docs\/\">java documentation<\/a>\u00a0but I wasn&#8217;t able to find it.<\/p>\n<p>So, Integer equals Integer but not quite always. Hope you enjoyed this post and I&#8217;m looking forwards to your comments and remarks on this topic.<\/p>\n<!--CusAds0-->\n<div style=\"font-size: 0px; height: 0px; line-height: 0px; margin: 0; padding: 0; clear: both;\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Autoboxing in Java explained with examples In this post I will try to give you an example showing what autoboxing in Java is. This post is about a curious situation I encountered while debugging a Java application (not written by me). It was quite an &#8220;ahhh&#8221;\u00a0&#8220;ohhh&#8221; &#8220;wtf&#8221; moment regarding since I spent about an hour [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":926,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[135],"tags":[129,137],"class_list":["post-811","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-java-en","tag-tips-en"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Autoboxing In Java<\/title>\n<meta name=\"description\" content=\"The Integer autoboxing in Java is implemented by using caching only for values between -128 and 127, so Integer == Integer is true only in this interval.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Autoboxing In Java\" \/>\n<meta property=\"og:description\" content=\"The Integer autoboxing in Java is implemented by using caching only for values between -128 and 127, so Integer == Integer is true only in this interval.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/\" \/>\n<meta property=\"og:site_name\" content=\"Coding Dude\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-18T16:32:14+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-07-06T15:09:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png\" \/>\n\t<meta property=\"og:image:width\" content=\"408\" \/>\n\t<meta property=\"og:image:height\" content=\"348\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"John Negoita\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@codingdudecom\" \/>\n<meta name=\"twitter:site\" content=\"@codingdudecom\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"John Negoita\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/\"},\"author\":{\"name\":\"John Negoita\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#\\\/schema\\\/person\\\/29b7100b9ec7bb332359bd9fcba98370\"},\"headline\":\"Autoboxing In Java &#8211; Java Integer == Integer &#8211; WTF moment with Java\",\"datePublished\":\"2018-06-18T16:32:14+00:00\",\"dateModified\":\"2018-07-06T15:09:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/\"},\"wordCount\":550,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/wp-content\\\/uploads\\\/2014\\\/10\\\/JavaDukeTeach_larger.png\",\"keywords\":[\"java\",\"tips\"],\"articleSection\":[\"Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/\",\"url\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/\",\"name\":\"Autoboxing In Java\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/wp-content\\\/uploads\\\/2014\\\/10\\\/JavaDukeTeach_larger.png\",\"datePublished\":\"2018-06-18T16:32:14+00:00\",\"dateModified\":\"2018-07-06T15:09:34+00:00\",\"description\":\"The Integer autoboxing in Java is implemented by using caching only for values between -128 and 127, so Integer == Integer is true only in this interval.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/wp-content\\\/uploads\\\/2014\\\/10\\\/JavaDukeTeach_larger.png\",\"contentUrl\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/wp-content\\\/uploads\\\/2014\\\/10\\\/JavaDukeTeach_larger.png\",\"width\":408,\"height\":348,\"caption\":\"java teacher\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/java\\\/autoboxing-in-java\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Autoboxing In Java &#8211; Java Integer == Integer &#8211; WTF moment with Java\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#website\",\"url\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/\",\"name\":\"Coding Dude\",\"description\":\"Coding tutorials, tips and tricks\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#organization\",\"name\":\"Coding Dude\",\"url\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/wp-content\\\/uploads\\\/2018\\\/05\\\/codingdude-logo-wide.jpg\",\"contentUrl\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/wp-content\\\/uploads\\\/2018\\\/05\\\/codingdude-logo-wide.jpg\",\"width\":226,\"height\":60,\"caption\":\"Coding Dude\"},\"image\":{\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/codingdudecom\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.coding-dude.com\\\/wp\\\/#\\\/schema\\\/person\\\/29b7100b9ec7bb332359bd9fcba98370\",\"name\":\"John Negoita\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d51d5d54d4c51f0a7bfe39333bd98cfc5245ab49433be692fce26b741c08181e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d51d5d54d4c51f0a7bfe39333bd98cfc5245ab49433be692fce26b741c08181e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d51d5d54d4c51f0a7bfe39333bd98cfc5245ab49433be692fce26b741c08181e?s=96&d=mm&r=g\",\"caption\":\"John Negoita\"},\"description\":\"I'm a Java programmer, been into programming since 1999 and having tons of fun with it.\",\"sameAs\":[\"http:\\\/\\\/www.coding-dude.com\",\"https:\\\/\\\/x.com\\\/codingdudecom\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Autoboxing In Java","description":"The Integer autoboxing in Java is implemented by using caching only for values between -128 and 127, so Integer == Integer is true only in this interval.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/","og_locale":"en_US","og_type":"article","og_title":"Autoboxing In Java","og_description":"The Integer autoboxing in Java is implemented by using caching only for values between -128 and 127, so Integer == Integer is true only in this interval.","og_url":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/","og_site_name":"Coding Dude","article_published_time":"2018-06-18T16:32:14+00:00","article_modified_time":"2018-07-06T15:09:34+00:00","og_image":[{"width":408,"height":348,"url":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png","type":"image\/png"}],"author":"John Negoita","twitter_card":"summary_large_image","twitter_creator":"@codingdudecom","twitter_site":"@codingdudecom","twitter_misc":{"Written by":"John Negoita","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#article","isPartOf":{"@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/"},"author":{"name":"John Negoita","@id":"https:\/\/www.coding-dude.com\/wp\/#\/schema\/person\/29b7100b9ec7bb332359bd9fcba98370"},"headline":"Autoboxing In Java &#8211; Java Integer == Integer &#8211; WTF moment with Java","datePublished":"2018-06-18T16:32:14+00:00","dateModified":"2018-07-06T15:09:34+00:00","mainEntityOfPage":{"@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/"},"wordCount":550,"commentCount":0,"publisher":{"@id":"https:\/\/www.coding-dude.com\/wp\/#organization"},"image":{"@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#primaryimage"},"thumbnailUrl":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png","keywords":["java","tips"],"articleSection":["Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/","url":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/","name":"Autoboxing In Java","isPartOf":{"@id":"https:\/\/www.coding-dude.com\/wp\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#primaryimage"},"image":{"@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#primaryimage"},"thumbnailUrl":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png","datePublished":"2018-06-18T16:32:14+00:00","dateModified":"2018-07-06T15:09:34+00:00","description":"The Integer autoboxing in Java is implemented by using caching only for values between -128 and 127, so Integer == Integer is true only in this interval.","breadcrumb":{"@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#primaryimage","url":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png","contentUrl":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png","width":408,"height":348,"caption":"java teacher"},{"@type":"BreadcrumbList","@id":"https:\/\/www.coding-dude.com\/wp\/java\/autoboxing-in-java\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.coding-dude.com\/wp\/"},{"@type":"ListItem","position":2,"name":"Autoboxing In Java &#8211; Java Integer == Integer &#8211; WTF moment with Java"}]},{"@type":"WebSite","@id":"https:\/\/www.coding-dude.com\/wp\/#website","url":"https:\/\/www.coding-dude.com\/wp\/","name":"Coding Dude","description":"Coding tutorials, tips and tricks","publisher":{"@id":"https:\/\/www.coding-dude.com\/wp\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.coding-dude.com\/wp\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.coding-dude.com\/wp\/#organization","name":"Coding Dude","url":"https:\/\/www.coding-dude.com\/wp\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.coding-dude.com\/wp\/#\/schema\/logo\/image\/","url":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2018\/05\/codingdude-logo-wide.jpg","contentUrl":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2018\/05\/codingdude-logo-wide.jpg","width":226,"height":60,"caption":"Coding Dude"},"image":{"@id":"https:\/\/www.coding-dude.com\/wp\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/codingdudecom"]},{"@type":"Person","@id":"https:\/\/www.coding-dude.com\/wp\/#\/schema\/person\/29b7100b9ec7bb332359bd9fcba98370","name":"John Negoita","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d51d5d54d4c51f0a7bfe39333bd98cfc5245ab49433be692fce26b741c08181e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d51d5d54d4c51f0a7bfe39333bd98cfc5245ab49433be692fce26b741c08181e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d51d5d54d4c51f0a7bfe39333bd98cfc5245ab49433be692fce26b741c08181e?s=96&d=mm&r=g","caption":"John Negoita"},"description":"I'm a Java programmer, been into programming since 1999 and having tons of fun with it.","sameAs":["http:\/\/www.coding-dude.com","https:\/\/x.com\/codingdudecom"]}]}},"jetpack_featured_media_url":"https:\/\/www.coding-dude.com\/wp\/wp-content\/uploads\/2014\/10\/JavaDukeTeach_larger.png","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/posts\/811","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/comments?post=811"}],"version-history":[{"count":13,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/posts\/811\/revisions"}],"predecessor-version":[{"id":2660,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/posts\/811\/revisions\/2660"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/media\/926"}],"wp:attachment":[{"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/media?parent=811"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/categories?post=811"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.coding-dude.com\/wp\/wp-json\/wp\/v2\/tags?post=811"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}