⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hexfloatliterals.java

📁 是一款用JAVA 编写的编译器 具有很强的编译功能
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
/* * Copyright 2003 Sun Microsystems, Inc.  All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, * CA 95054 USA or visit www.sun.com if you need additional information or * have any questions. *//* * @test * @bug 4920023 * @summary add "hexadecimal floating-point literal" support to javac as per 4896828 * @author gafter * * @compile -source 1.5 HexFloatLiterals.java * @run main HexFloatLiterals */public class HexFloatLiterals {    public static void check(float a, float b) {	if (a != b) throw new Error(a + " != " + b);    }    public static void check(double a, double b) {	if (a != b) throw new Error(a + " != " + b);    }    public static void main(String[] args) {	check(-0X.003p12d, Double.parseDouble("-0X.003p12d"));	check(-0x.003P12F, Float.parseFloat("-0x.003P12F"));	check(0x.006p11D, Double.parseDouble("0x.006p11D"));	check(0X.00cP10D, Double.parseDouble("0X.00cP10D"));	check(-0x.018P9, Double.parseDouble("-0x.018P9"));	check(0x.018P9D, Double.parseDouble("0x.018P9D"));	check(0X.018P9D, Double.parseDouble("0X.018P9D"));	check(-0x.3p4F, Float.parseFloat("-0x.3p4F"));	check(0x.3p4d, Double.parseDouble("0x.3p4d"));	check(+0x.Cp2F, Float.parseFloat("+0x.Cp2F"));	check(0X.cP2F, Float.parseFloat("0X.cP2F"));	check(0x1.8p1d, Double.parseDouble("0x1.8p1d"));	check(0X1.8p1D, Double.parseDouble("0X1.8p1D"));	check(0X1.8p1f, Float.parseFloat("0X1.8p1f"));	check(0X1.8P1, Double.parseDouble("0X1.8P1"));	check(0x3p0d, Double.parseDouble("0x3p0d"));	check(-0x3P0d, Double.parseDouble("-0x3P0d"));	check(0X3P0, Double.parseDouble("0X3P0"));	check(0x6.0p-1d, Double.parseDouble("0x6.0p-1d"));	check(-0X6.0P-1, Double.parseDouble("-0X6.0P-1"));	check(+0xC.0p-2f, Float.parseFloat("+0xC.0p-2f"));	check(-0xC.0p-2F, Float.parseFloat("-0xC.0p-2F"));	check(-0X3000000p-24, Double.parseDouble("-0X3000000p-24"));	check(+0x3.0P0, Double.parseDouble("+0x3.0P0"));	check(0x3.000000p0d, Double.parseDouble("0x3.000000p0d"));	check(0x3.000000P0, Double.parseDouble("0x3.000000P0"));	check(-0X3.000000p0, Double.parseDouble("-0X3.000000p0"));	check(0X3.000000P0D, Double.parseDouble("0X3.000000P0D"));	check(-0x0.0P-2044, Double.parseDouble("-0x0.0P-2044"));	check(+0x0.0P2147483646, Double.parseDouble("+0x0.0P2147483646"));	check(0X0.0p2147483647d, Double.parseDouble("0X0.0p2147483647d"));	check(0X0.0p2147483647D, Double.parseDouble("0X0.0p2147483647D"));	check(+0x0.0p2147483648, Double.parseDouble("+0x0.0p2147483648"));	check(+0x0.0P2147483648D, Double.parseDouble("+0x0.0P2147483648D"));	check(-0X0.0P-2147483649d, Double.parseDouble("-0X0.0P-2147483649d"));	check(-0X0.0P-2147483648, Double.parseDouble("-0X0.0P-2147483648"));	check(0X0.0P-2147483647F, Float.parseFloat("0X0.0P-2147483647F"));	check(-0x0.0p9223372036854775806, Double.parseDouble("-0x0.0p9223372036854775806"));	check(-0x0.0P9223372036854775806f, Float.parseFloat("-0x0.0P9223372036854775806f"));	check(-0x0.0p9223372036854775807F, Float.parseFloat("-0x0.0p9223372036854775807F"));	check(-0X0.0p9223372036854775807D, Double.parseDouble("-0X0.0p9223372036854775807D"));	check(0X0.0P9223372036854775807D, Double.parseDouble("0X0.0P9223372036854775807D"));	check(0x0.0p-9223372036854775807, Double.parseDouble("0x0.0p-9223372036854775807"));	check(-0x0.0p-9223372036854775807F, Float.parseFloat("-0x0.0p-9223372036854775807F"));	check(+0X0.0P-9223372036854775807D, Double.parseDouble("+0X0.0P-9223372036854775807D"));	check(+0X0.0p-9223372036854775808d, Double.parseDouble("+0X0.0p-9223372036854775808d"));	check(+0x1p0, Double.parseDouble("+0x1p0"));	check(-0x1p0F, Float.parseFloat("-0x1p0F"));	check(-0X1p0, Double.parseDouble("-0X1p0"));	check(0X12P0F, Float.parseFloat("0X12P0F"));	check(-0x123p0F, Float.parseFloat("-0x123p0F"));	check(+0x123P0d, Double.parseDouble("+0x123P0d"));	check(0X1234P0, Double.parseDouble("0X1234P0"));	check(-0X12345p0f, Float.parseFloat("-0X12345p0f"));	check(-0x123456p0F, Float.parseFloat("-0x123456p0F"));	check(0X123456p0f, Float.parseFloat("0X123456p0f"));	check(-0X123456p0f, Float.parseFloat("-0X123456p0f"));	check(-0x1234567P0d, Double.parseDouble("-0x1234567P0d"));	check(-0X1234567P0f, Float.parseFloat("-0X1234567P0f"));	check(+0X123456789P0F, Float.parseFloat("+0X123456789P0F"));	check(0x123456789ap0d, Double.parseDouble("0x123456789ap0d"));	check(0x123456789ABp0, Double.parseDouble("0x123456789ABp0"));	check(+0x123456789ABp0f, Float.parseFloat("+0x123456789ABp0f"));	check(0X123456789abcP0F, Float.parseFloat("0X123456789abcP0F"));	check(+0X123456789ABCDp0, Double.parseDouble("+0X123456789ABCDp0"));	check(0x123456789ABCDEp0D, Double.parseDouble("0x123456789ABCDEp0D"));	check(-0X0.3P0F, Float.parseFloat("-0X0.3P0F"));	check(0X0.4P0F, Float.parseFloat("0X0.4P0F"));	check(+0X0.4P0, Double.parseDouble("+0X0.4P0"));	check(+0X0.5p0f, Float.parseFloat("+0X0.5p0f"));	check(0X0.5p0d, Double.parseDouble("0X0.5p0d"));	check(-0X0.5p0d, Double.parseDouble("-0X0.5p0d"));	check(-0X0.6p0F, Float.parseFloat("-0X0.6p0F"));	check(+0X0.6P0F, Float.parseFloat("+0X0.6P0F"));	check(+0x0.8p0f, Float.parseFloat("+0x0.8p0f"));	check(+0x0.8p0F, Float.parseFloat("+0x0.8p0F"));	check(0x0.9P0D, Double.parseDouble("0x0.9P0D"));	check(-0X0.Bp0, Double.parseDouble("-0X0.Bp0"));	check(-0x0.CP0F, Float.parseFloat("-0x0.CP0F"));	check(+0X0.Cp0d, Double.parseDouble("+0X0.Cp0d"));	check(-0x0.dp0F, Float.parseFloat("-0x0.dp0F"));	check(0x0.DP0F, Float.parseFloat("0x0.DP0F"));	check(-0X0.eP0f, Float.parseFloat("-0X0.eP0f"));	check(-0X1.000000000001p-1075, Double.parseDouble("-0X1.000000000001p-1075"));	check(+0x0.FFFFFFFFFFFFF8p-1022, Double.parseDouble("+0x0.FFFFFFFFFFFFF8p-1022"));	check(-0X1.FFFFFFFFFFFFF0000000P1023, Double.parseDouble("-0X1.FFFFFFFFFFFFF0000000P1023"));	check(-0x1.FFFFFFFFFFFFF4p1023, Double.parseDouble("-0x1.FFFFFFFFFFFFF4p1023"));	check(+0X1.ffffffffffffe7p1023d, Double.parseDouble("+0X1.ffffffffffffe7p1023d"));	check(+0x1.FFFFFFFFFFFFE8000001p1023d, Double.parseDouble("+0x1.FFFFFFFFFFFFE8000001p1023d"));	check(0x7FFFFFFFFFFFF80P-58, Double.parseDouble("0x7FFFFFFFFFFFF80P-58"));	check(0xFFFFFFFFFFFFF00p-59, Double.parseDouble("0xFFFFFFFFFFFFF00p-59"));	check(0xFFFFFFFFFFFFF00P-59d, Double.parseDouble("0xFFFFFFFFFFFFF00P-59d"));	check(0XFFFFFFFFFFFFF00P-59d, Double.parseDouble("0XFFFFFFFFFFFFF00P-59d"));	check(+0x1ffffffffffffe00p-60f, Float.parseFloat("+0x1ffffffffffffe00p-60f"));	check(0x3ffffffffffffc00P-61d, Double.parseDouble("0x3ffffffffffffc00P-61d"));	check(0X3ffffffffffffc00p-61d, Double.parseDouble("0X3ffffffffffffc00p-61d"));	check(0X7FFFFFFFFFFFF800p-62F, Float.parseFloat("0X7FFFFFFFFFFFF800p-62F"));	check(+0Xfffffffffffff000p-63D, Double.parseDouble("+0Xfffffffffffff000p-63D"));	check(+0X7FFFFFFFFFFFF81p-58f, Float.parseFloat("+0X7FFFFFFFFFFFF81p-58f"));	check(0xfffffffffffff02P-59D, Double.parseDouble("0xfffffffffffff02P-59D"));	check(+0X7ffffffffffff810P-62, Double.parseDouble("+0X7ffffffffffff810P-62"));	check(-0Xfffffffffffff020p-63, Double.parseDouble("-0Xfffffffffffff020p-63"));	check(0Xfffffffffffff020p-63D, Double.parseDouble("0Xfffffffffffff020p-63D"));	check(+0XFFFFFFFFFFFFF020P-63D, Double.parseDouble("+0XFFFFFFFFFFFFF020P-63D"));	check(+0x7ffffffffffff82p-58, Double.parseDouble("+0x7ffffffffffff82p-58"));	check(-0x7ffffffffffff82p-58f, Float.parseFloat("-0x7ffffffffffff82p-58f"));	check(-0x7ffffffffffff82P-58D, Double.parseDouble("-0x7ffffffffffff82P-58D"));	check(+0xFFFFFFFFFFFFF04p-59F, Float.parseFloat("+0xFFFFFFFFFFFFF04p-59F"));	check(0Xfffffffffffff04P-59d, Double.parseDouble("0Xfffffffffffff04P-59d"));	check(+0x7ffffffffffff820p-62D, Double.parseDouble("+0x7ffffffffffff820p-62D"));	check(-0x7FFFFFFFFFFFF820P-62f, Float.parseFloat("-0x7FFFFFFFFFFFF820P-62f"));	check(0xfffffffffffff040P-63d, Double.parseDouble("0xfffffffffffff040P-63d"));	check(0x7FFFFFFFFFFFF84p-58, Double.parseDouble("0x7FFFFFFFFFFFF84p-58"));	check(+0X7ffffffffffff84P-58d, Double.parseDouble("+0X7ffffffffffff84P-58d"));	check(0X7FFFFFFFFFFFF84P-58f, Float.parseFloat("0X7FFFFFFFFFFFF84P-58f"));	check(-0xfffffffffffff08P-59f, Float.parseFloat("-0xfffffffffffff08P-59f"));	check(-0xFFFFFFFFFFFFF08P-59f, Float.parseFloat("-0xFFFFFFFFFFFFF08P-59f"));	check(-0X1FFFFFFFFFFFFE10p-60F, Float.parseFloat("-0X1FFFFFFFFFFFFE10p-60F"));	check(-0X3ffffffffffffc20P-61F, Float.parseFloat("-0X3ffffffffffffc20P-61F"));	check(0X3FFFFFFFFFFFFC20P-61f, Float.parseFloat("0X3FFFFFFFFFFFFC20P-61f"));	check(-0x7FFFFFFFFFFFF840P-62f, Float.parseFloat("-0x7FFFFFFFFFFFF840P-62f"));	check(-0X7FFFFFFFFFFFF840p-62, Double.parseDouble("-0X7FFFFFFFFFFFF840p-62"));	check(+0X7FFFFFFFFFFFF85p-58F, Float.parseFloat("+0X7FFFFFFFFFFFF85p-58F"));	check(-0xFFFFFFFFFFFFF0Ap-59d, Double.parseDouble("-0xFFFFFFFFFFFFF0Ap-59d"));	check(-0xfffffffffffff0aP-59d, Double.parseDouble("-0xfffffffffffff0aP-59d"));	check(-0xfffffffffffff0aP-59D, Double.parseDouble("-0xfffffffffffff0aP-59D"));	check(+0Xfffffffffffff0aP-59, Double.parseDouble("+0Xfffffffffffff0aP-59"));	check(+0X1FFFFFFFFFFFFE14p-60f, Float.parseFloat("+0X1FFFFFFFFFFFFE14p-60f"));	check(+0x3FFFFFFFFFFFFC28p-61, Double.parseDouble("+0x3FFFFFFFFFFFFC28p-61"));	check(0x7ffffffffffff850P-62F, Float.parseFloat("0x7ffffffffffff850P-62F"));	check(+0X7ffffffffffff850P-62, Double.parseDouble("+0X7ffffffffffff850P-62"));	check(-0xFFFFFFFFFFFFF0Cp-59F, Float.parseFloat("-0xFFFFFFFFFFFFF0Cp-59F"));	check(-0x1ffffffffffffe18p-60D, Double.parseDouble("-0x1ffffffffffffe18p-60D"));	check(+0x1FFFFFFFFFFFFE18p-60, Double.parseDouble("+0x1FFFFFFFFFFFFE18p-60"));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -