《Java核心技术 卷II》本地化的数字格式

news/2025/2/9 5:39:40 标签: 开发语言, Java, Java核心II

数字格式

数字和货币的格式高度依赖locale。
格式化对象的集合,可以对java.text包中的数字进行格式化和解析。

格式化数字值

对特定locale的数字进行格式化的步骤:
  • 得到Locale对象
  • 使用工厂方法得到一个格式器对象。
  • 使用这个格式器对象来完成格式化解析工作。
工厂方法是NumberFormat类的静态方法,接受一个Locale类型参数。
3个工厂方法,getNumberInstance,getCurrencyInstance,getPercentInstance。
分别对数字、货币量和百分比进行格式化和解析。
对德语中的货币值进行格式化
package 第7章国际化;

import java.text.NumberFormat;
import java.util.Locale;

public class 对德语中的货币值进行格式化 {

    public static void main(String[] args) {
        Locale loc = Locale.GERMAN;
        NumberFormat format = NumberFormat.getCurrencyInstance(loc);
        double amt = 123456.78;
        String result = format.format(amt);
        System.out.println(result);
        System.out.println(NumberFormat.getCurrencyInstance(Locale.CHINA).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.CANADA).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.FRANCE).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.ITALY).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.JAPAN).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.UK).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.KOREA).format(1111111.11));
        System.out.println(NumberFormat.getCurrencyInstance(Locale.US).format(1111111.11));
        //短风格
        System.out.println(NumberFormat.getCompactNumberInstance(Locale.TAIWAN,NumberFormat.Style.SHORT).format(1111111.11));
    }
    
}

数字格式探索器的通俗易懂文本版本
待续。。。

7.2.2 DecimalFormat类

略,查资料。

7.2.3 货币

看不下去,暂时略。

http://www.niftyadmin.cn/n/5845589.html

相关文章

AI知识库和全文检索的区别

1、AI知识库的作用 AI知识库是基于人工智能技术构建的智能系统,能够理解、推理和生成信息。它的核心作用包括: 1.1 语义理解 自然语言处理(NLP):AI知识库能够理解用户查询的语义,而不仅仅是关键词匹配。 …

kafka服务端之日志磁盘存储

文章目录 页缓存顺序写零拷贝 Kafka依赖于文件系统(更底层地来说就是磁盘)来存储和缓存消息 。 那么kafka是如何让自身在使用磁盘存储的情况下达到高性能的?接下来主要从3各方面详细解说。 页缓存 页缓存是操作系统实现的一种主要的磁盘缓存…

R包:ggalign调整和组合多个图形的R包

文章目录 介绍案例安装R包教程1教程2参考 介绍 这个包扩展了ggplot2,提供了用于对齐和组织多个图的高级工具,特别是那些自动重新排序观察结果的工具,比如树形图。它提供了对布局调整和情节注释的精细控制,使您能够创建复杂的、出…

模板方法模式(Template)

一、模板方法的定义: 在操作中定义业务逻辑框架,包含业务逻辑的方法就是模板方法,模板方法允许子类在不改变原有业务逻辑的流程下,对某些步骤进行扩展和修改; 是一种基于继承的代码复用技术,是一种类行为…

Django开发入门 – 0.Django基本介绍

Django开发入门 – 0.Django基本介绍 A Brief Introduction to django By JacksonML 1. Django简介 1) 什么是Django? 依据其官网的一段解释: Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. …

pytest.fixture

pytest.fixture 是 pytest 测试框架中的一个非常强大的功能,它允许你在测试函数运行前后执行一些设置或清理代码。以下是关于 pytest.fixture 的详细介绍: 一、定义与用途 pytest.fixture 是一个装饰器,用于标记一个函数为 fixture。Fixture 函数中的代码可以在测试函数运…

基于 AI 智能名片 2+1 链动模式 S2B2C 商城小程序的线下门店同城流量运营策略研究

摘要:本文聚焦于线下门店在利用同城流量售卖产品过程中面临的机遇与挑战,深入探讨如何借助 AI 智能名片 21 链动模式 S2B2C 商城小程序优化运营策略。通过分析该模式与线下门店基于抖音平台开展业务的结合点,为线下门店在抖音流量红利下实现人…

Node.js 应用性能测试:Autocannon 的使用与 Docker 集成

在上一篇文章中,我们探讨了如何通过 PM2 和 Docker 的结合来高效管理和部署 Node.js 应用。本文将进一步介绍如何通过 autocannon 这一强大的性能测试工具,评估和优化 Node.js 应用的性能表现。无论是 API 服务、Web 应用,还是微服务架构&…