title: Most efficient way to find the nearest number in a list
body: <p>I know what they say <em>pre-optimization is the root of all evil</em> however I'm more curious here as to what is the most efficient way to do this. Just a little more to the knowledge pool, you know?</p>
  
  <p>Basically I have a collection of integers, like so:</p>
  
  <pre><code>final List&lt;Integer&gt; list = ImmutableList.of(1, 5, 10, 27, 57, 193);
  </code></pre>
  
  <p>Now I want to find the nearest number, rounded down. So for example I have the number 192. So the returned value from this list will be "57". Same applies if the number was 58. It just finds the next lowest number.</p>
  
  <p>Currently I'm looping through the list starting from the end, using a <code>for</code> then returning the index of the list, which would be the number that I want. I'm just curious as to if there's a more efficient way to do this.</p>