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

  • SEARCH
  • Home
  • 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 8439515
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 10, 20262026-06-10T08:01:14+00:00 2026-06-10T08:01:14+00:00

I expect two identical transforms to result objects that have the same hashCode .

  • 0

I expect two identical transforms to result objects that have the same hashCode. I’d like to use this property to check whether my object has changed in a meaningful way.

Unfortunately, Guava’s TransformedCollection extends AbstractCollection which (unlike AbstractList) does not implement hashCode or equals, and TransformedCollection does no such attempt itself.

  • Could we not calculate a hashCode based on the values as returned by the iterator’s order or some such?
  • Or would that still not guarantee identical hashCodes?
  • Perhaps we can solve this problem for TransformedCollection in a way it cannot be solved for AbstractCollection?
  • 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-06-10T08:01:15+00:00Added an answer on June 10, 2026 at 8:01 am

    Unfortunately, there’s no sane way for defining Collection.hashCode. A collection can be a Set or a List (or something else) and the two define hashCode in an incompatible way.

    Moreover, for the same reason there’s no sane definition for transformedCollection1.equals(transformedCollection2). It could either ignore the order, or not (Set or List semantics). Even worse, the returned Collection is just a view, and such equals would be terrible inefficient.

    I’d suggest to use something like ImmutableList.copyOf(transformedCollection) and work with it.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Say I have two functions that expect ...rest parameters private function a(...myParams):void { trace(myParams.length);
After adding two identical objects to a Set, I would expect the set to
I have a class that inherits from CCNode. This class has two CCSprites. When
I have a web page with 3 web forms, where the first two expect
I have written an app in C which expects two lines at input. First
My use case expects heavy read load - there are two possible model design
I expect this FQL query to return a non-empty array, because there are comments
My expect code does this: It does a ssh connect to another machine, sends
I expect this might get some downvotes / closevotes but I'm going to ask
I expect the answer to this is already here someplace, but I was not

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.