Google's Java often uses class libraries guava

Source: Internet
Author: User

Guava Chinese is the meaning of pomegranate, this project is an open source project of Google, including many Google core Java often use libraries.

1. Basic tools [Basic utilities]
Make it more comfortable to use the Java language
1.1 The use and avoidance of null:null is ambiguous and can cause confusing mistakes, and sometimes it makes people very uncomfortable. Very many guava tool classes reject null values with high-speed failures, rather than blindly accepting
1.2 Preconditions: Making conditional checks in methods easier
1.3 Common Object methods: simplifying the implementation of the object method, such as Hashcode () and ToString ()
1.4 reviews sorted by guava powerful "fluent style comparison device"
1.5 Throwables: Simplifies the propagation and inspection of anomalies and errors

2. Set [Collections]
Guava extension of the JDK collection, which is the most mature and well-known part of guava
2.1 Immutable Collections: Defensive programming and performance improvements with immutable collections.
2.2 New collection types: multisets, multimaps, tables, bidirectional maps, etc.
2.3 Powerful Collection Tools class: Provides a collection tool that is not available in java.util.Collections
2.4 Extension Tool classes: make it easier to implement and extend collection classes, such as creating collection adorners, or implementing iterators

3. cache [Caches]
Guava Cache: Local cache implementation, support for multiple cache expiration policies

4. Functional style [functional idioms]
Guava's functional support can significantly simplify your code, but use it sparingly

5. concurrency [Concurrency]
Powerful and simple abstraction, making it easier to write the right concurrency code
5.1 Listenablefuture: The future of triggering callbacks after completion
5.2 Service Framework: Abstract services that can be turned on and off to help you maintain the state logic of your service

6. String processing [Strings]
Very useful string tool, including cutting, joining, filling and other operations

7. Native type [primitives]
Extended JDK does not provide native types (such as int, char) operations, and contains some types of unsigned forms

8. Interval [Ranges]
Comparable types of interval APIs, including continuous and discrete types

9. I/O
Simplifies I/O, especially I/O flow and file operations, for JAVA5 and 6 version numbers

10. Hash [Hash]
Provides more complex hashing implementations than Object.hashcode () and provides the implementation of the Bloom filter

11. Event bus [Eventbus]
Advertisement-Subscription mode for component communication, but components do not need to be explicitly registered with other components

12. Mathematical operations [Math]
Optimized, fully tested Math tool class

13. Reflection [Reflection]
Guava's Java reflection mechanism tool class

Detail resources: http://download.csdn.net/detail/luo201227/7207227

Google's Java often uses class libraries guava

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.