import java.math.BigDecimal;
import org.hamcrest.CoreMatchers;
import org.junit.Assert;
import com.google.common.base.MoreObjects;
/**
* TODO 在此写上类的相关说明.<br>
* @author gqltt <br>
* @version 1.0.0 2021年11月11日<br>
* @see
* @since JDK 1.5.0
*/
public class MoreObjectsDemo {
/**
* @param args
*/
public static void main(String[] args) {
firstNull();
Book book = Book.newInstance("Microservices Pattern", "Chris Richardson",
"机械工业出版社", new BigDecimal("139.00"), "9787111624127");
System.out.println(book);
//Book{title=Microservices Pattern, author=Chris Richardson, publisher=机械工业出版社, price=139.00, isbn=9787111624127}
}
/**
* 第一个值非null则第一个,否则第二个.
*/
static void firstNull() {
String value = "bar";
String returned = MoreObjects.firstNonNull(null, value);
Assert.assertThat(returned, CoreMatchers.is(value));
}
static class Book {
/**
* 书名.
*/
private String title;
/**
* 作者.
*/
private String author;
/**
* 出版社.
*/
private String publisher;
/**
* 价格.
*/
private BigDecimal price;
/**
* ISBN.
*/
private String isbn;
/**
* 简介.
*/
private String introduce;
public static Book newInstance(String title, String author,
String publisher, BigDecimal price, String isbn) {
final Book book = new Book();
book.title = title;
book.author = author;
book.publisher = publisher;
book.price = price;
book.isbn = isbn;
return book;
}
/**
* toString工具.
*/
public String toString() {
return MoreObjects.toStringHelper(this)
.omitNullValues()
.add("title", title)
.add("author", author)
.add("publisher", publisher)
.add("price",price)
.add("isbn", isbn)
.add("introduce", introduce)
.toString();
}
}
}
Guava入门~MoreObjects
最新推荐文章于 2023-04-04 20:55:48 发布