Java经典实例:使用ChoiceFormat来格式化复数
import java.text.ChoiceFormat; /**
* Created by Frank
*/
public class FormatPuralsChoice extends FormatPlurals {
static double[] limits = {0, 1, 2};
static String[] formats = {"reviews", "review", "reviews"};
static ChoiceFormat plurlizedFormat = new ChoiceFormat(limits, formats); // 使用ChoiceFormat将数值转换为英语的文本
static ChoiceFormat quantizedFormat = new ChoiceFormat("0#no reviews|1#one review|1<many reviews"); // 测试数据
static int[] data = {-1, 0, 1, 2, 3}; public static void main(String[] args) {
System.out.println("Pluralized format");
for (int i : data) {
System.out.println("Found " + i + " " + plurlizedFormat.format(i));
}
System.out.println("Quantized Format");
for (int i : data) {
System.out.println("Found " + quantizedFormat.format(i));
}
}
} class FormatPlurals {
public static void main(String[] args) {
report(0);
report(1);
report(2);
} public static void report(int n) {
System.out.println("We used" + n + " item" + (n == 1 ? "" : "s"));
}
}
Java经典实例:使用ChoiceFormat来格式化复数的更多相关文章
- Java经典实例:使用DateFormatter来格式化日期时间
Java版本:1.8开始 import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; ...
- Java经典实例:正则表达式,替换匹配的文本
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by Frank * 替换匹配的文本 */ ...
- Java 经典实例:自定义迭代器
编写自己的Iterator,实现Iterator接口,这里多说一句,实现Iterable后,可以用"foreach"循环遍历你的对象. import java.util.Itera ...
- Java经典实例:把字符串解析为日期时间
Java版本:1.8开始 import java.time.LocalDate; import java.time.LocalDateTime; /** * Created by Frank */ p ...
- Java经典实例:纪元秒和本地日期时间互换
Java版本:1.8开始 import java.time.Instant; import java.time.ZoneId; import java.time.ZonedDateTime; /** ...
- Java经典实例:比较浮点数
/** * Created by Frank * 比较浮点数 */ public class FloatCmp { // 公差 private final static Double EPSILON ...
- Java经典实例:在文本中匹配换行符
默认情况下,正则表达式 ^ 和 $ 忽略行结束符,仅分别与整个输入序列的开头和结尾匹配.如果激活 MULTILINE 模式,则 ^ 在输入的开头和行结束符之后(输入的结尾)才发生匹配.处于 MULTI ...
- Java经典实例:在正则表达式中控制大小写
默认是:区分大小写的: 传递标志参数:Pattern.CASE_INSENSITIVE,以说明匹配时忽略大小写:如果你的代码运行在不同的地区那么你应该再添加一个Pattern.UNICODE_CASE ...
- Java经典实例:正则表达式,找到匹配的文本
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by Frank */ public cla ...
随机推荐
- Android Studio 使用技巧
1.导入Android Studio 工程的一些技巧 因为Gradle版本的问题,我们在使用AS导入工程的时候,经常会碰到本地没有该项目的Gradle版本,这时候AS就会去下载这个版本的Gradle, ...
- CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
最近在测试的过程中, 发现了SpringBoar的一个问题: SpringBoard[53] <Error>: CGContextTranslateCTM: invalid context ...
- CSS中的::after ::before
利用::after和before来清除浮动 <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- Android线程处理之Handler总结
上一篇为大家介绍了如何通过Handler对象把Message数据发送到主线程,我想大家一定都已经掌握了,本篇我将以一个例子的方式为大家总结一下Handler的使用,例子是通过Handler实现一个图片 ...
- URL中的特殊字符
原网址:http://pichcar.iteye.com/blog/676292 URL中的特殊字符 有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了.编 ...
- SharePoint Server 2013开发之旅(四):配置工作流开发和测试环境
工作流这个功能,在SharePoint Server 2013中做了很大的改动.我们可以从微软官方的文档中了解一下大概的情况 http://technet.microsoft.com/zh-cn/li ...
- MySQL性能优化的最佳21条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...
- NODE.JS之我见
NODE.JS之我见 先说说为什么有这篇文章,关注NODE.JS 也有一段时间了,不敢说大彻大悟,但是对于NODE.JS能干什么,还是有一定的了解,笔者多年以前就研究过JavaScript引擎V8,可 ...
- html/css基础篇——link和@inport详解以及脚本执行顺序探讨
先说一说两者之间的异同 两者都可以引用外部CSS的方式,现在主流浏览器两者都支持(ps:@import是CSS2.1提出的),但是存在一定的区别: 1.link是XHTML标签,除了加载CSS外,还可 ...
- window、document、html、body、element的事件属性比较
在分析jQuery的事件的时候有提到绑定事件的方式: Dean Edwards的跨浏览器事件绑定使用的方式是 element["on" + type] = handleEvent; ...