最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Springboot Thymeleaf數(shù)字對象使用方法

 更新時間:2020年04月23日 15:12:23   作者:gdjlc  
這篇文章主要介紹了Springboot Thymeleaf數(shù)字對象使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

Thymeleaf主要使用 org.thymeleaf.expression.Numbers 類處理數(shù)字,在模板中使用 #numbers 對象來處理數(shù)字。

開發(fā)環(huán)境:IntelliJ IDEA 2019.2.2

Spring Boot版本:2.1.8

新建一個名稱為demo的Spring Boot項(xiàng)目。

pom.xml加入Thymeleaf依賴:

  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
  </dependency>

一、整數(shù)格式化

有4個方法:

(1)formatInteger(number,digits)

第一個參數(shù)為單個數(shù)字,如果有小數(shù)字點(diǎn)則四舍五入,第二個參數(shù)設(shè)置最少的整數(shù)位數(shù),不足會補(bǔ)0(下同)

(2)arrayFormatInteger(numbers,digits)

傳入數(shù)組,返回處理后的數(shù)組

(3)listFormatInteger(numbers,digits)

傳入List,返回處理后的List

(4)setFormatInteger(numbers,digits)

傳入Set,返回處理后的Set

這4個方法存在重載方法傳入第三個參數(shù),用于標(biāo)識千位分隔符

  • POINT : 使用“.”
  • COMMA : 使用“,”
  • WHITESPACE : 使用“ ”(空格)
  • NONE : 不使用分隔符
  • DEFAULT : 根據(jù)Locale對象來決定

1、src/main/resources/templates/integer.html

formatInteger(number,digits)
<div th:text="${#numbers.formatInteger(10,0)}"></div>
<div th:text="${#numbers.formatInteger(10.6,2)}"></div>
<div th:text="${#numbers.formatInteger(10.6,5)}"></div>
<div th:text="${#numbers.formatInteger(10.50,0)}"></div>
<div th:text="${#numbers.formatInteger(10.51,2)}"></div>
<div th:text="${#numbers.formatInteger(10000000,0,'COMMA')}"></div>
<div th:text="${#numbers.formatInteger(10000000,0,'POINT')}"></div>

arrayFormatInteger(numbers,digits)
<div th:each="num : ${#numbers.arrayFormatInteger(arr,0)}">
 <div th:text="${num}"></div>
</div>
listFormatInteger(numbers,digits)
<div th:each="num : ${#numbers.listFormatInteger(list,2)}">
 <div th:text="${num}"></div>
</div>
setFormatInteger(numbers,digits)
<div th:each="num : ${#numbers.setFormatInteger(set,4)}">
 <div th:text="${num}"></div>
</div>

2、src/main/java/com/example/demo/IntegerController.java

package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

@Controller
public class IntegerController {
 @RequestMapping("/integer")
 public String integer(Model model){
  Double[] arr = new Double[]{10D, 10.9};
  List list = Arrays.asList(arr);
  Set set = new HashSet(list);
  model.addAttribute("arr", arr);
  model.addAttribute("list", list);
  model.addAttribute("set", set);
  return "integer";
 }
}

瀏覽器訪問:http://localhost:8080/integer

頁面輸出:

formatInteger(number,digits)
10
11
00011
10
11
10,000,000
10.000.000
arrayFormatInteger(numbers,digits)
10
11
listFormatInteger(numbers,digits)
10
11
setFormatInteger(numbers,digits)
0010
0011

二、小數(shù)格式化

同樣有4個方法:

(1)formatDecimal(number,intDig,decDig)

第一個參數(shù)為單個數(shù)字,第二個參數(shù)設(shè)置最少的整數(shù)位數(shù)(不足會補(bǔ)0),第三個參數(shù)設(shè)置保留小數(shù)位數(shù)

(2)arrayFormatDecimal(numArray,intDig,decDig)

傳入數(shù)組,返回處理后的數(shù)組

(3)listFormatDecimal(numList,intDig,decDig)

傳入List,返回處理后的List

(4)setFormatDecimal(numSet,intDig,decDig)

傳入Set,返回處理后的Set

這4個方法都存在兩個重載方法,以formatDecimal為例:

(a)formatDecimal(number,intDig,decDig,decPoint)

decPoint表示用什么符號作為小數(shù)點(diǎn),取值為POINT、COMMA、WHITESPACE、NONE和DEFAULT。

(b)formatDecimal(number,intDig,separator,decDig,decPoint)

separator表示用什么符號作為千位分隔符,同樣取值為POINT、COMMA、WHITESPACE、NONE和DEFAULT。

1、src/main/resources/templates/decimal.html

<div th:text="${#numbers.formatDecimal(10, 0, 0)}"></div>
<div th:text="${#numbers.formatDecimal(10.6, 0, 2)}"></div>
<div th:text="${#numbers.formatDecimal(10.6, 5, 2)}"></div>
<div th:text="${#numbers.formatDecimal(10000000, 0, 2, 'COMMA')}"></div>
<div th:text="${#numbers.formatDecimal(10000000, 2, 2, 'POINT')}"></div>
<div th:text="${#numbers.formatDecimal(10000000, 2, 'POINT', 2, 'POINT')}"></div>

2、src/main/java/com/example/demo/DecimalController.java

package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class DecimalController {
 @RequestMapping("/decimal")
 public String decimal(){
  return "decimal";
 }
}

瀏覽器訪問:http://localhost:8080/decimal

頁面輸出:

10
10.60
00010.60
10000000,00
10000000.00
10.000.000.00

三、百分比格式化

和小數(shù)的格式化類似,同樣有4個方法,其中處理單個數(shù)字用

formatPercent(number,intDig,decDig)

第一個參數(shù)為單個數(shù)字,第二個參數(shù)設(shè)置最少的整數(shù)位數(shù)(不足會補(bǔ)0),第三個參數(shù)設(shè)置保留小數(shù)位數(shù)

1、src/main/resources/templates/percent.html

<div th:text="${#numbers.formatPercent(0.123, 0, 2)}"></div>
<div th:text="${#numbers.formatPercent(0.123, 5, 2)}"></div>

2、src/main/java/com/example/demo/PercentController.java

package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class PercentController {
 @RequestMapping("/percent")
 public String percent(){
  return "percent";
 }
}

瀏覽器訪問:http://localhost:8080/percent

頁面輸出:

12.30%
00,012.30%

四、sequence方法

sequence方法返回Integer數(shù)組。

(1)sequence(from,to)

設(shè)置開始值與結(jié)束值,如果from比to大,則默認(rèn)步長為1,否則為-1。

(2)sequence(from,to,step)

設(shè)置開始值與結(jié)束值,步長。

1、src/main/resources/templates/sequence.html

<div th:each="num : ${#numbers.sequence(0,3)}">
 <div th:text="${num}"></div>
</div>
----------
<div th:each="num : ${#numbers.sequence(5,1)}">
 <div th:text="${num}"></div>
</div>

2、src/main/java/com/example/demo/SequenceController.java

package com.example.demo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class SequenceController {
 @RequestMapping("/sequence")
 public String sequence(){
  return "sequence";
 }
}

瀏覽器訪問:http://localhost:8080/percent

頁面輸出:

0
1
2
3
----------
5
4
3
2
1

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • maven package 打包報(bào)錯 Failed to execute goal的解決

    maven package 打包報(bào)錯 Failed to execute goal的解決

    這篇文章主要介紹了maven package 打包報(bào)錯 Failed to execute goal的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Java Synchronized鎖升級原理及過程剖析

    Java Synchronized鎖升級原理及過程剖析

    這篇文章主要為大家詳細(xì)介紹一下Java中Synchronized鎖升級原理及過程,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)學(xué)習(xí)
    2022-08-08
  • Java多線程(單例模式,堵塞隊(duì)列,定時器)詳解

    Java多線程(單例模式,堵塞隊(duì)列,定時器)詳解

    這篇文章主要介紹了java多線程的(單例模式,堵塞隊(duì)列,定時器),具有一定參考價值,加深多線程編程的理解還是很有幫助的,需要的朋友可以參考下
    2021-08-08
  • Java如何通過反射獲取Constructor、Field、Method對象

    Java如何通過反射獲取Constructor、Field、Method對象

    反射指的是對象的反向處理操作,根據(jù)對象取得對象的來源信息,在反射的世界里面,看重的不再是一個對象,而是對象身后的組成,下面這篇文章主要給大家介紹了關(guān)于Java如何通過反射獲取Constructor、Field、Method對象的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • Java咖啡館(1)——嘆咖啡

    Java咖啡館(1)——嘆咖啡

    這篇文章主要給大家介紹了關(guān)于Java咖啡館之嘆咖啡,需要的朋友可以參考下
    2006-12-12
  • Java基本類型和包裝類型的區(qū)別

    Java基本類型和包裝類型的區(qū)別

    這篇文章主要介紹了Java基本類型和包裝類型的區(qū)別,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下
    2020-09-09
  • 一篇文章詳解JAVA中的@Schema注解

    一篇文章詳解JAVA中的@Schema注解

    @Schema注解用于描述數(shù)據(jù)模型,包括類和屬性,使得描述更加的詳細(xì)和清楚,通常和swagger3一起使用,這篇文章主要介紹了JAVA中@Schema注解的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04
  • servlet實(shí)現(xiàn)文件下載的步驟及說明詳解

    servlet實(shí)現(xiàn)文件下載的步驟及說明詳解

    這篇文章主要為大家詳細(xì)介紹了servlet實(shí)現(xiàn)文件下載的步驟及說明,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(43)

    Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(43)

    下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你
    2021-07-07
  • Java線程池源碼的深度解析

    Java線程池源碼的深度解析

    線程池的好處和使用本篇文章就不贅敘了,這篇文章主要通過線程池的源碼帶大家深入了解一下jdk8中線程池的實(shí)現(xiàn),感興趣的小伙伴可以了解一下
    2022-10-10

最新評論

凤凰县| 田东县| 湖州市| 富源县| 中江县| 孝昌县| 鄂尔多斯市| 会泽县| 新郑市| 衡阳县| 乌审旗| 泸水县| 缙云县| 墨竹工卡县| 罗平县| 天台县| 资中县| 中阳县| 井研县| 报价| 盐边县| 淮北市| 临高县| 河曲县| 揭东县| 民丰县| 容城县| 繁峙县| 平阳县| 青阳县| 齐河县| 夏津县| 应城市| 德昌县| 叙永县| 民和| 崇信县| 乐陵市| 黄山市| 平陆县| 万荣县|