| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE html |
| PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us"> |
| <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
| |
| <meta name="generator" content="DITA-OT" /><meta name="DC.type" content="task" /> |
| <meta name="DC.title" content="Analyzing Java Collection Usage" /> |
| <meta name="copyright" content="Copyright (c) 2008, 2020 SAP AG, IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ " type="primary" /> |
| <meta name="DC.rights.owner" content="Copyright (c) 2008, 2020 SAP AG, IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ " type="primary" /> |
| <meta name="DC.format" content="XHTML" /> |
| <meta name="DC.identifier" content="task_analyzingjavacollectionusage" /> |
| <meta name="DC.language" content="en-us" /> |
| <link rel="stylesheet" type="text/css" href="../styles/commonltr.css" /> |
| <title>Analyzing Java Collection Usage</title> |
| </head> |
| <body id="task_analyzingjavacollectionusage"> |
| |
| <h1 class="title topictitle1" id="ariaid-title1">Analyzing Java Collection Usage</h1> |
| |
| |
| |
| <div class="body taskbody"> |
| <div class="section context"> |
| <p class="p">A collection is an object that are used to store, retrieve and |
| manipulate the data. Memory Analyzer offers the following queries to |
| analyze java collections:</p> |
| |
| |
| <div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" class="table" frame="border" border="1" rules="all"><colgroup><col /><col /></colgroup><tbody class="tbody"> |
| <tr id="task_analyzingjavacollectionusage__arrayfillratio" class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Array Fill Ratio</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;">Prints a frequency distribution of fill ratios of |
| non-primitive arrays. The fill ratio is the proportion of |
| non-null elements in the array. The arrays are then accumulated |
| into as many segments as parameterized. Primitive arrays cannot |
| have null values so this query works only on object arrays. |
| </td> |
| |
| </tr> |
| |
| <tr id="task_analyzingjavacollectionusage__arraybysize" class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Arrays Grouped by Size</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;">Distribution histogram of given arrays grouped |
| by the size.</td> |
| |
| </tr> |
| |
| <tr id="task_analyzingjavacollectionusage__collectionfillratio" class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Collection Fill Ratio</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <p class="p">Prints a frequency distribution of fill ratios of given |
| collections. The following collections can be used for the |
| query:</p> |
| |
| <ul class="ul"> |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.awt.RenderingHints</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.beans.beancontext.BeanContextSupport</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.lang.ThreadLocal$ThreadLocalMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ArrayDeque</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ArrayList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Arrays$ArrayList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedCollection</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$EmptyList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$EmptyMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$EmptySet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SetFromMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SingletonList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SingletonSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedCollection</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableCollection</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ArrayBlockingQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentLinkedDeque</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentLinkedQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentSkipListMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.CopyOnWriteArrayList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.DelayQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.LinkedBlockingDeque</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.LinkedBlockingQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.LinkedTransferQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.SynchronousQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.EnumMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.EnumSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.HashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.HashSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Hashtable</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.IdentityHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$List0</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$Set1</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedHashSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.PriorityQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Properties</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.TreeSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.WeakHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.jar.Attributes</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>javax.script.SimpleBindings</code></pre> |
| </li> |
| |
| </ul> |
| |
| <p class="p">One additional custom collection (e.g. non-JDK) collection |
| can be specified by the 'collection', 'size_attribute' and |
| 'array_attribute' argument.</p> |
| |
| </td> |
| |
| </tr> |
| |
| <tr id="task_analyzingjavacollectionusage__collectionsbysize" class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Collections Grouped By Size</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <p class="p">Distribution histogram of given collections by |
| their size. The following collections can be used for the |
| query. Known collections:</p> |
| |
| <ul class="ul"> |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.awt.RenderingHints</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.beans.beancontext.BeanContextSupport</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.lang.ThreadLocal$ThreadLocalMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ArrayDeque</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ArrayList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Arrays$ArrayList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedCollection</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$EmptyList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$EmptyMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$EmptySet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SetFromMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SingletonList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SingletonMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SingletonSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedCollection</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableCollection</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ArrayBlockingQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentLinkedDeque</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentLinkedQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentSkipListMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentSkipListSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.CopyOnWriteArrayList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.CopyOnWriteArraySet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.DelayQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.LinkedBlockingDeque</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.LinkedBlockingQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.LinkedTransferQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.SynchronousQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.EnumMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.EnumSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.HashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.HashSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Hashtable</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.IdentityHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$List0</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$List1</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$List2</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$ListN</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$MapN</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$Set0</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$Set1</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$Set2</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$SetN</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.jar.Attributes</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedHashSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedList</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.PriorityQueue</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Properties</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.TreeMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.TreeSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Vector</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.WeakHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>javax.script.SimpleBindings</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>javax.swing.UIDefaults</code></pre> |
| </li> |
| |
| </ul> |
| |
| <p class="p">One additional custom collection (e.g. non-JDK) collection |
| can be specified by the 'collection', 'size_attribute' and |
| 'array_attribute' argument.</p> |
| |
| </td> |
| |
| </tr> |
| |
| <tr class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Extract List Values</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <p class="p">Lists elements of a single LinkedList, ArrayList, Vector, |
| CopyOnWriteArrayList, PriorityQueue, ArrayDeque |
| object.</p> |
| |
| |
| </td> |
| |
| </tr> |
| |
| <tr class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Hash Entries</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <p class="p">Extracts the key-value pairs from hash maps and |
| hashtables.</p> |
| |
| </td> |
| |
| </tr> |
| |
| <tr class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Extract Hash Set Values</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <p class="p">Lists elements of a single HashSet.</p> |
| |
| </td> |
| |
| </tr> |
| |
| <tr id="task_analyzingjavacollectionusage__mapcollision" class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Map Collision Ratio</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <p class="p">Prints a frequency distribution of the collision ratios |
| of map-like collections. The following map-like collections can |
| be used for the query.</p> |
| |
| <ul class="ul"> |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.HashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Properties</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Hashtable</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.WeakHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentHashMap$Segment</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.HashSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentSkipListMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.concurrent.ConcurrentSkipListSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$CheckedSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$SynchronizedSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.Collections$UnmodifiableSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedHashMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.LinkedHashSet</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.ImmutableCollections$MapN</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.util.jar.Attributes</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.awt.RenderingHints</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.beans.beancontext.BeanContextSupport</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>java.lang.ThreadLocal$ThreadLocalMap</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>javax.script.SimpleBindings</code></pre> |
| </li> |
| |
| <li class="li"> |
| <pre class="pre codeblock"><code>javax.swing.UIDefaults</code></pre> |
| </li> |
| |
| </ul> |
| |
| <p class="p"> One additional custom map-like (e.g. non-JDK) collection can |
| be specified by the 'collection', 'size_attribute' and |
| 'array_attribute' argument.</p> |
| |
| </td> |
| |
| </tr> |
| |
| <tr id="task_analyzingjavacollectionusage__primitivearrayconstvalue" class="row"> |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| <strong class="ph b"><span class="keyword cmdname">Primitive Arrays with a Constant Value</span> Query</strong> |
| </td> |
| |
| <td class="entry cellrowborder" style="vertical-align:top;"> |
| Lists a summary of all primitive arrays (from a selection) which are filled with one and the |
| same value. |
| Arrays with the same length and constant value are grouped together. |
| </td> |
| |
| </tr> |
| |
| </tbody> |
| </table> |
| </div> |
| |
| <p class="p"> |
| All these queries are accessible from the toolbar drop-down menu: |
| <span class="ph menucascade"><span class="ph uicontrol">Open Query Browser</span><abbr title="and then"> > </abbr><span class="ph uicontrol">Java Collections</span></span> |
| </p> |
| |
| <p class="p"> |
| There are also available from the pop-up context menu using mouse button 2 on a selection of objects from a previous query. |
| Unsuitable queries for the selection are filtered out and are not shown, so for example a <span class="keyword cmdname">Hash Entries</span> query |
| would not be offered for a selection of <code class="ph codeph">ArrayList</code> objects. |
| All the collection queries can be seen from the pop-up context menu using: |
| <span class="ph menucascade"><span class="ph uicontrol">Search Queries...</span><abbr title="and then"> > </abbr><span class="ph uicontrol">Java Collections</span></span> |
| Any query can then be selected and run. |
| </p> |
| |
| </div> |
| |
| </div> |
| |
| </body> |
| </html> |