Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6854499
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T01:38:26+00:00 2026-05-27T01:38:26+00:00

In Python I can do the following: d = { ‘a’: True, ‘b’: False

  • 0

In Python I can do the following:

d = { 'a': True, 'b': False }
print d.get('x', True)

It will print

True

In Java, the HashMap.get method does not have the second argument for specifying a default value. What is a correct, terse and readable way of achieving this? The following expression seems too redundant to me:

map.containsKey("x") ? map.get("x") : true
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-27T01:38:27+00:00Added an answer on May 27, 2026 at 1:38 am

    Both are wrong because they will do 2 lookups.
    Generally you’ll want to do:

    Boolean ret = map.get("x");
    if (ret == null) {
        return true
    }
    return ret;
    

    You can wrap this in a function

    public static <K,V> V mapGet(Map<K, V> map, K key, V defaultValue) {
        V ret = map.get(key);
        if (ret == null) {
            return defaultValue;
        }
        return ret;
    }
    

    You can make it non-static if you want. If you are the person instantiating the map object (you don’t get it from exernal code) you can subclass hashmap. If an API returns map instance then you can’t use subclassing.

    public class MyHashMap<K,V> extends HashMap<K,V> {
        public V get(K key, V default) {
            V ret = get(key);
            if (ret == null) {
                return defaultValue;
            }
            return ret;
        }
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Can the following method be written any shorter (without semicolons) in Python in a
How can I implement the following in python? #include <iostream> int main() { std::string
In python you can use a tuple in a formatted print statement and the
In Python I can use the iterkeys() method to iterate over the keys of
I am new to python,can anybody please explain the following syntax, for i in
I'm new to Python's custom sorting capabilities, but I'm sure the following can be
I am fluent in C++, Java, and Python and can pretty much pick up
In python, I can do the following: keys = [1, 2, 3] values =
In Python, using the IPy module you can do the following: >>> ip.iptype() 'PRIVATE'
I have the following Python list (can also be a tuple): myList = ['foo',

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.