久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

為什么 DecimalFormat 允許字符作為后綴?

Why does DecimalFormat allow characters as suffix?(為什么 DecimalFormat 允許字符作為后綴?)
本文介紹了為什么 DecimalFormat 允許字符作為后綴?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

限時送ChatGPT賬號..

我正在使用 DecimalFormat 來解析/驗證用戶輸入.不幸的是,它允許在解析時將字符作為后綴.

I'm using DecimalFormat to parse / validate user input. Unfortunately it allows characters as a suffix while parsing.

示例代碼:

try {
  final NumberFormat numberFormat = new DecimalFormat();
  System.out.println(numberFormat.parse("12abc"));
  System.out.println(numberFormat.parse("abc12"));
} catch (final ParseException e) {
  System.out.println("parse exception");
}

結果:

12
parse exception

我實際上希望它們都出現解析異常.如何告訴 DecimalFormat 不允許像 "12abc" 這樣的輸入?

I would actually expect a parse exception for both of them. How can I tell DecimalFormat to not allow input like "12abc"?

推薦答案

來自NumberFormat.parse:

從給定字符串的開頭解析文本以生成一個數字.該方法可能不會使用給定字符串的整個文本.

Parses text from the beginning of the given string to produce a number. The method may not use the entire text of the given string.

這是一個示例,可以讓您了解如何確保考慮整個字符串.

Here is an example that should give you an idea how to make sure the entire string is considered.

import java.text.*;

public class Test {
    public static void main(String[] args) {
        System.out.println(parseCompleteString("12"));
        System.out.println(parseCompleteString("12abc"));
        System.out.println(parseCompleteString("abc12"));
    }

    public static Number parseCompleteString(String input) {
        ParsePosition pp = new ParsePosition(0);
        NumberFormat numberFormat = new DecimalFormat();
        Number result = numberFormat.parse(input, pp);
        return pp.getIndex() == input.length() ? result : null;
    }
}

輸出:

12
null
null

這篇關于為什么 DecimalFormat 允許字符作為后綴?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Parsing an ISO 8601 string local date-time as if in UTC(解析 ISO 8601 字符串本地日期時間,就像在 UTC 中一樣)
How to convert Gregorian string to Gregorian Calendar?(如何將公歷字符串轉換為公歷?)
Java: What/where are the maximum and minimum values of a GregorianCalendar?(Java:GregorianCalendar 的最大值和最小值是什么/在哪里?)
Calendar to Date conversion for dates before 15 Oct 1582. Gregorian to Julian calendar switch(1582 年 10 月 15 日之前日期的日歷到日期轉換.公歷到儒略歷切換)
java Calendar setFirstDayOfWeek not working(java日歷setFirstDayOfWeek不起作用)
Java: getting current Day of the Week value(Java:獲取當前星期幾的值)
主站蜘蛛池模板: 日本一区二区三区四区 | 亚洲欧美中文日韩在线v日本 | 国产精品一区二区不卡 | 精品欧美一区二区三区精品久久 | 成人精品鲁一区一区二区 | 91丨国产| 黄色在线观看 | 亚洲乱码一区二区三区在线观看 | 久久久久久久久久久久久9999 | 91精品国产综合久久久久久 | 欧美精品一区二区三区在线 | 欧美精品一区久久 | 国产精品久久久久久久久久久免费看 | 日韩精品一区二区三区在线播放 | 精品国产乱码久久久久久牛牛 | av中文字幕在线播放 | 欧美日韩在线免费观看 | 中文字幕av在线 | 中文字幕在线视频一区二区三区 | 性高朝久久久久久久3小时 av一区二区三区四区 | 久久99网 | 久久精品国产一区二区三区 | 成人免费三级电影 | 狠狠亚洲 | 亚洲麻豆 | 亚洲午夜精品一区二区三区他趣 | 亚洲欧洲激情 | 日韩在线免费看 | 天天躁日日躁狠狠躁白人 | 久久久久免费 | 日韩中文字幕在线观看视频 | 草草网| 99re国产| 久久国产视频网 | 国家aaa的一级看片 h片在线看 | 操久久 | 一区二区三区四区不卡 | 91亚洲精品国偷拍自产在线观看 | 在线观看视频91 | 二区三区在线观看 | 亚洲人成网亚洲欧洲无码 |