Aliaksei Budavei | 100a665 | 2024-03-02 01:11:14 +0300 | [diff] [blame] | 1 | class NumbersTests |
| 2 | { |
| 3 | static { |
| 4 | double[] dd = { |
| 5 | 0x.0p0, 0x0.p0, 0x0.0p0, 0x0P0, |
| 6 | 0x.0p0d, 0x0.p0d, 0x0.0p0d, 0x0P0D, |
| 7 | 0x.0p0f, 0x0.p0f, 0x0.0p0f, 0x0P0F, |
| 8 | 0x.0p0, 0x0.p0, 0x0.0p0, 0x0P0, |
| 9 | 0x.0p0d, 0x0.p0d, 0x0.0p0d, 0x0P0D, |
| 10 | 0x.0p0f, 0x0.p0f, 0x0.0p0f, 0x0P0F, |
| 11 | 0x.0p-0, 0x0.p-0, 0x0.0p-0, 0x0P-0, |
| 12 | 0x.0p-0d, 0x0.p-0d, 0x0.0p-0d, 0x0P-0D, |
| 13 | 0x.0p-0f, 0x0.p-0f, 0x0.0p-0f, 0x0P-0F, |
| 14 | 0x.0p+0, 0x0.p+0, 0x0.0p+0, 0x0P+0, |
| 15 | 0x.0p+0d, 0x0.p+0d, 0x0.0p+0d, 0x0P+0D, |
| 16 | 0x.0p+0f, 0x0.p+0f, 0x0.0p+0f, 0x0P+0F, |
| 17 | |
| 18 | 1., 1.2, 1.2e3, 1.2e3d, 1.2e3f, |
| 19 | 1.2e-3, 1.2e-3d, 1.2E-3F, |
| 20 | 1.2e+3, 1.2E+3D, 1.2e+3f, |
| 21 | .2, .2e3, .2e3d, .2e3f, |
| 22 | .2e-3, .2e-3d, .2E-3F, |
| 23 | .2e+3, .2E+3D, .2e+3f, |
| 24 | 1e3, 1e3d, 1e3f, |
| 25 | 1e-3, 1e-3d, 1E-3F, |
| 26 | 1e+3, 1E+3D, 1e+3f, |
| 27 | 1d, 1D, 1f, 1F, |
| 28 | |
| 29 | //// MALFORMED: :let g:java_comment_strings = 1 | doautocmd Syntax |
| 30 | // 0_x.0p0, 0x._0p0, 0x.0_p0, 0x.0p_0, 0x.0p0_, |
| 31 | // 0x0_.0p0, 0x_0.0p0, 0xp0, |
| 32 | }; |
| 33 | |
| 34 | int O = 0; |
| 35 | int OO = 00; |
| 36 | int OxO = 0x0; |
| 37 | |
| 38 | int x = 0x12_345_678; |
| 39 | int y = 0b01_01_01_01_01; |
| 40 | int z = 0__1__2__3__4__5__6__7; |
| 41 | |
| 42 | // String.format("%a", -1.0) |
| 43 | double minus_one_d = -0x1.0p0; |
| 44 | |
| 45 | double z_d = -0x.0p0; |
| 46 | double y_d = 0xap1__0__0; |
| 47 | double x_d = .0__1__2__3__4__5__6__7__8__9; |
| 48 | double dot_O = .0; |
| 49 | |
| 50 | // JLS, §3.10.2: |
| 51 | float max_dec_f = 3.4028235e38f; |
| 52 | float max_hex_f = 0x1.fffffeP+127f; |
| 53 | float min_dec_f = 1.4e-45f; |
| 54 | float min_hex_f_a = 0x0.000002P-126f; |
| 55 | float min_hex_f_b = 0x1.0P-149f; |
| 56 | |
| 57 | double max_dec_d = 1.7976931348623157e3__0__8; |
| 58 | double max_hex_d = 0x1.f_ffff_ffff_ffffP+1023; |
| 59 | double min_dec_d = 4.9e-3__2__4; |
| 60 | double min_hex_d_a = 0x0.0_0000_0000_0001P-1022; |
| 61 | double min_hex_d_b = 0x1.0P-1074; |
| 62 | |
| 63 | // JLS, §3.10.1: |
| 64 | int max_hex = 0x7fff_ffff; |
| 65 | int max_oct = 0177_7777_7777; |
| 66 | int max_bin = 0b0111_1111_1111_1111_1111_1111_1111_1111; |
| 67 | |
| 68 | int min_hex = 0x8000_0000; |
| 69 | int min_oct = 0200_0000_0000; |
| 70 | int min_bin = 0b1000_0000_0000_0000_0000_0000_0000_0000; |
| 71 | |
| 72 | int minus_one_hex = 0xffff_ffff; |
| 73 | int minus_one_oct = 0377_7777_7777; |
| 74 | int minus_one_bin = 0b1111_1111_1111_1111_1111_1111_1111_1111; |
| 75 | |
| 76 | long max_hex_l = 0x7fff_ffff_ffff_ffffL; |
| 77 | long max_oct_l = 07_7777_7777_7777_7777_7777L; |
| 78 | long max_bin_l = 0b0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L; |
| 79 | |
| 80 | long min_hex_l = 0x8000_0000_0000_0000L; |
| 81 | long min_oct_l = 010_0000_0000_0000_0000_0000L; |
| 82 | long min_bin_l = 0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000L; |
| 83 | |
| 84 | long minus_one_hex_l = 0xffff_ffff_ffff_ffffL; |
| 85 | long minus_one_oct_l = 017_7777_7777_7777_7777_7777L; |
| 86 | long minus_one_bin_l = 0b1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L; |
| 87 | } |
| 88 | } |