title: Not getting currency symbols for specific Locale
body: <p>I am trying to get the symbols of the currencies based on their Locale. But instead of returning a symbol, it is returning the code. I have a snippet:</p>
  
  <pre><code>import java.util.Currency;
  import java.util.Locale;
  
  public class CurrencyFormat
  {
    public void displayCurrencySymbols() 
    {
     Currency currency = Currency.getInstance(Locale.US); 
     System.out.println("United States: " + currency.getSymbol());
    } 
    public static void main(String[] args)
    {
      new CurrencyFormat().displayCurrencySymbols();
    }
  }
  </code></pre>
  
  <p>For <strong>Locale.US</strong> it is giving symbol <code>$</code> but If I replace</p>
  
  <pre><code>Currency currency = Currency.getInstance(Locale.US); 
  </code></pre>
  
  <p>with </p>
  
  <pre><code>Currency currency = Currency.getInstance(Locale.GERMANY); 
  </code></pre>
  
  <p>Then instead of symbol it is giving the country code. Why is this and how we can get the symbols?</p>
  
  <p><strong>EDIT :</strong> After looking some answer I would like to clear that setting some specific default local is not a solution as <strong>I need all the avalaible sign displayed at once</strong>.</p>
  
  <p>e.g. </p>
  
  <pre><code> Locale.setDefault(Locale.UK); 
  </code></pre>
  
  <p>will give me the euro sign but for doller it will give the code instead of doller sign($).</p>