平时.NET做多了,再做Java时,总会进行一些比较,比如说Java中有没有类似C#的String.format方法来进行字符串的格式化,免去拼接字符串的麻烦呢,CodeReview的时候总是被别人提出,开始以为Java中使用的是哪些%d、%s一类的感觉很是麻烦就没去注意了,正好朋友找到了类似的方法,在这里贴出来长长脑。
Java有SimpleDateFormat这个类,可以格式化日期,查看Java API知道DateFormat 是SimpleDateFormat的父类,再追查下去,又发现DateFormat 的父类是java.text.Format
,而java.text.Format还有几个子类,其中一个就是java.text.MessageFormat,Java API对其描述如下:MessageFormate
public class MessageFormatextends Format MessageFormat 提供了以与语言无关方式生成连接消息的方式。使用此方法构造向终端用户显示的消息。
MessageFormat 获取一组对象,格式化这些对象,然后将格式化后的字符串插入到模式中的适当位置。
注:MessageFormat 不同于其他 Format 类,因为 MessageFormat 对象是用其构造方法之一创建的(而不是使用 getInstance 样式的工厂方法创建的)。工厂方法不是必需的,因为 MessageFormat 本身不实现特定于语言环境的行为。特定于语言环境的行为是由所提供的模式和用于已插入参数的子格式来定义的。
不管那么多,先试试再说吧。
Demo01
String item_ds="<input type=/"radio/" value=/"{0}/" name=/"{1}/" />{2}";
String temp=MessageFormat.format(item_ds, value,this.id+"group",text);
输出结果为:
<input type="radio" value="1" name="IMG7008CA8DB3DD42E08D322B1358D15093group" />
Demo02:
System.out.println (MessageFormat.format("Today is {0}",new Date()));
System.out.println (MessageFormat.format("My age is {0},I was borm at {1}.",26,1979));
输出结果为:
Today is 06-10-15 下午8:34My age is 26,I was borm at 1,979
总结:
找找总会有方法的!
分享到:
相关推荐
MessageFormat是Java中用于格式化字符串的一个非常有用的类,它允许我们使用模板化的模式来插入变量值,并且支持多种格式,如数字、日期、时间等。这个类的主要优点在于其灵活性和可读性,使得代码更加清晰,易于...
本教程将深入探讨Java中的字符串格式化技术,包括使用`String.format()`方法、`printf()`方法以及`StringBuilder`和`StringBuffer`类的使用。 首先,让我们了解`String.format()`方法。这个方法允许我们创建具有...
总之,`MessageFormat.format`是Java中处理格式化字符串的关键工具,通过其提供的模式和参数,开发者可以方便地生成符合特定格式要求的字符串,同时支持多种数据类型的格式化,是实现多语言应用不可或缺的一部分。
六、字符串格式化 1、 使用String.format方法:String formatted = String.format("%s, %d", "Hello", 123); 输出结果:"Hello, 123" 2、 使用MessageFormat类:MessageFormat format = new MessageFormat("{0}, {1}...
在Java编程语言中,`format`是一个重要的概念,主要用于数据的输出和字符串的格式化。以下将详细讨论Java中与`format`相关的知识点。 首先,`java.text.Format`是Java中处理格式化的一个抽象基类,它定义了将对象...
15. **国际化与本地化**:`java.text`包中的`MessageFormat`类可以用于处理国际化字符串,`String`的`format()`方法也可结合`ResourceBundle`实现类似功能。 以上只是Java字符串处理的一部分知识点,实际开发中还有...
在Java编程语言中,`MessageFormat`类是用于格式化字符串的强大工具,它允许程序员根据指定的模式将变量数据插入到文本中。这个类是`java.text`包的一部分,主要用于国际化(i18n)和本地化(l10n)的应用场景。`...
`String.format()` 是Java标准库提供的一种格式化字符串的方法,它源自C语言的printf风格。使用此方法,你可以通过在字符串中使用`%s`、`%d`等占位符,并传递相应的参数,来生成动态的字符串。例如: ```java ...
Java数据格式化是Java编程语言中处理数据呈现和解析的核心技术之一,主要涉及对文本、日期、数值等数据类型的格式化处理,以适应不同的显示需求和国际化标准。本文将深入探讨Java数据格式化的关键概念、类和方法,...
在时间格式化中,这表现为将日期对象转化为特定格式的字符串。例如: ```java String dateTime = MessageFormat.format("{0,date,yyyy-MM-dd HH:mm:ss:SSS}", new java.sql.Date(System.currentTimeMillis())); ``...
"`,我们可以使用`MessageFormat.format()`方法将"{0}"替换为用户的名字: ```java String template = "欢迎,{0}!"; String formatted = MessageFormat.format(template, "张三"); message.setText(formatted); `...
- 格式化字符串允许在字符串中插入变量值,例如C++的`printf`、Python的`format()`函数和Java的`MessageFormat`类。 - 现代语言如Python和JavaScript的模板字符串提供了更直观和灵活的格式化方式。 5. **Unicode...
例如,创建Formatter对象并直接格式化输出到System.out,创建GregorianCalendar实例进行日期时间格式化,使用String.format()进行字符串的格式化,并且在例子中还使用了String.format()方法来格式化浮点数和整数。...
MessageFormat是Java中一个用于格式化字符串的类,它可以将一个字符串格式化成不同的模式。MessageFormat的格式化是基于一个模板字符串,其中包含一些占位符,如{0}、{1}等,这些占位符将被实际值所替换。 现在,让...
JAVA 时间格式化处理 JAVA 时间格式化处理是软件开发中一个非常重要的方面。...在 JAVA 中,我们可以使用 java.util.Date、java.util.Calendar、java.text.DateFormat 等类来实现日期和时间的处理和格式化。
MessageFormat.format() 方法可以用于格式化字符串,例如: ```java String arg0 = "Bob"; String arg1 = "Alice"; String formattedText = MessageFormat.format("hello, {0}. I am {1}.", arg0, arg1); System....
8. **格式化字符串**:在C家族语言中,`printf`和`scanf`系列函数用于格式化输出和输入;在Java中,`String.format()`和`MessageFormat`类提供了类似的功能;在Python中,有`format()`方法和f-string。 9. **正则...
2. **类型安全**:不同于简单的字符串格式化方法(如`string.Format`),MessageFormat.NET在编译时就能检查格式化字符串和传入参数的匹配性,避免运行时错误。 3. **兼容ICU规范**:MessageFormat.NET完全遵循ICU ...