<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>IndexedReadOnlyStringMap (Apache Log4j API 2.23.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.logging.log4j.util, interface: IndexedReadOnlyStringMap">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/IndexedReadOnlyStringMap.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.logging.log4j.util</a></div>
<h1 title="Interface IndexedReadOnlyStringMap" class="title">Interface IndexedReadOnlyStringMap</h1>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Superinterfaces:</dt>
<dd><code><a href="ReadOnlyStringMap.html" title="interface in org.apache.logging.log4j.util">ReadOnlyStringMap</a></code>, <code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code></dd>
</dl>
<dl class="notes">
<dt>All Known Subinterfaces:</dt>
<dd><code><a href="IndexedStringMap.html" title="interface in org.apache.logging.log4j.util">IndexedStringMap</a></code></dd>
</dl>
<dl class="notes">
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="SortedArrayStringMap.html" title="class in org.apache.logging.log4j.util">SortedArrayStringMap</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">IndexedReadOnlyStringMap</span><span class="extends-implements">
extends <a href="ReadOnlyStringMap.html" title="interface in org.apache.logging.log4j.util">ReadOnlyStringMap</a></span></div>
<div class="block">An extension of <code>ReadOnlyStringMap</code> that imposes a total ordering on its keys.
 The map is ordered according to the natural ordering of its keys. This order is reflected when
 <a href="ReadOnlyStringMap.html#forEach(org.apache.logging.log4j.util.BiConsumer)"><code>consuming</code></a> the key-value pairs with a <a href="BiConsumer.html" title="interface in org.apache.logging.log4j.util"><code>BiConsumer</code></a> or a <a href="TriConsumer.html" title="interface in org.apache.logging.log4j.util"><code>TriConsumer</code></a>.
 <p>
 This interface views all key-value pairs as a sequence ordered by key, and allows
 keys and values to be accessed by their index in the sequence.
 </p></div>
<dl class="notes">
<dt>Since:</dt>
<dd>2.8</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="ReadOnlyStringMap.html" title="interface in org.apache.logging.log4j.util"><code>ReadOnlyStringMap</code></a></li>
</ul>
</dd>
</dl>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getKeyAt(int)" class="member-name-link">getKeyAt</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Viewing all key-value pairs as a sequence sorted by key, this method returns the key at the specified index,
 or <code>null</code> if the specified index is less than zero or greater or equal to the size of this collection.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>&lt;V&gt;&nbsp;V</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getValueAt(int)" class="member-name-link">getValueAt</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Viewing all key-value pairs as a sequence sorted by key, this method returns the value at the specified index,
 or <code>null</code> if the specified index is less than zero or greater or equal to the size of this collection.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#indexOfKey(java.lang.String)" class="member-name-link">indexOfKey</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;key)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Viewing all key-value pairs as a sequence sorted by key, this method returns the index of the specified key in
 that sequence.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.logging.log4j.util.ReadOnlyStringMap">Methods inherited from interface&nbsp;org.apache.logging.log4j.util.<a href="ReadOnlyStringMap.html" title="interface in org.apache.logging.log4j.util">ReadOnlyStringMap</a></h3>
<code><a href="ReadOnlyStringMap.html#containsKey(java.lang.String)">containsKey</a>, <a href="ReadOnlyStringMap.html#forEach(org.apache.logging.log4j.util.BiConsumer)">forEach</a>, <a href="ReadOnlyStringMap.html#forEach(org.apache.logging.log4j.util.TriConsumer,S)">forEach</a>, <a href="ReadOnlyStringMap.html#getValue(java.lang.String)">getValue</a>, <a href="ReadOnlyStringMap.html#isEmpty()">isEmpty</a>, <a href="ReadOnlyStringMap.html#size()">size</a>, <a href="ReadOnlyStringMap.html#toMap()">toMap</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getKeyAt(int)">
<h3>getKeyAt</h3>
<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getKeyAt</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block">Viewing all key-value pairs as a sequence sorted by key, this method returns the key at the specified index,
 or <code>null</code> if the specified index is less than zero or greater or equal to the size of this collection.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>index</code> - the index of the key to return</dd>
<dt>Returns:</dt>
<dd>the key at the specified index or <code>null</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getValueAt(int)">
<h3>getValueAt</h3>
<div class="member-signature"><span class="type-parameters">&lt;V&gt;</span>&nbsp;<span class="return-type">V</span>&nbsp;<span class="element-name">getValueAt</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block">Viewing all key-value pairs as a sequence sorted by key, this method returns the value at the specified index,
 or <code>null</code> if the specified index is less than zero or greater or equal to the size of this collection.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>index</code> - the index of the value to return</dd>
<dt>Returns:</dt>
<dd>the value at the specified index or <code>null</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="indexOfKey(java.lang.String)">
<h3>indexOfKey</h3>
<div class="member-signature"><span class="return-type">int</span>&nbsp;<span class="element-name">indexOfKey</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;key)</span></div>
<div class="block">Viewing all key-value pairs as a sequence sorted by key, this method returns the index of the specified key in
 that sequence. If the specified key is not found, this method returns <code>(-(insertion point) - 1)</code>.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>key</code> - the key whose index in the ordered sequence of keys to return</dd>
<dt>Returns:</dt>
<dd>the index of the specified key or <code>(-(insertion point) - 1)</code> if the key is not found.
          The insertion point is defined as the point at which the key would be inserted into the array:
          the index of the first element in the range greater than the key, or <code>size()</code> if all elements
          are less than the specified key. Note that this guarantees that the return value will be &gt;= 0
          if and only if the key is found.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small><p align="center">               Copyright &copy; 1999-2024 <a href="https://www.apache.org/">The Apache Software Foundation</a>.               All Rights Reserved.<br/>               Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.             </p></small></p>
</footer>
</div>
</div>
</body>
</html>
