1-2-3 Java常量与变量--ASCII码和Unicode编码,类型转换,常量,浮点型数据精确计算

ASCII码

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)

基于拉丁字母的一套电脑编码系统

主要用于显示现代英语和其他西欧语言

使用7位或8位二进制组合来表示128或256种可能的字符

标准ASCII码使用7位二进制来表示所有的大写字母和小写字母,数字0-9,标点符号,以及在美式英语中使用的特殊符号

后128个称为扩展ASCII码,用于表示特殊符号,外来语字母和图形符号

Unicode编码

char c = '\u005d';

Unicode表示法,在值前加前缀\u

类型转换

自动类型转换

 

强制类型转换

 如果A类型的数据表示范围比B类型大,则将A类型的值赋值给B类型,需要强制类型转换

double d = 123.4;

float f = (float)d;

常量

final int n=5;

浮点型数据精确计算

 通过BigDecimal类,先将浮点型数据转换为String类型数据,然后进行相应的计算.

 1 import org.junit.Test;
 2 
 3 import java.math.BigDecimal;
 4 
 5 public class BigDecimalTest {
 6 
 7     @Test
 8     public void test(){
 9         double a = 1.9;
10         double b = 1.7;
11         System.out.println("直接进行减法:" + (a-b));
12         System.out.println("BigDecimal实现减法:" + sub(a, b));
13         System.out.println("直接进行加法:" + (a+b));
14         System.out.println("BigDecimal实现加法:" + add(a, b));
15         //直接进行减法:0.19999999999999996
16         //BigDecimal实现减法:0.2
17         //直接进行加法:3.5999999999999996
18         //BigDecimal实现加法:3.6
19     }
20 
21     /**
22      * 减法
23      * @param v1
24      * @param v2
25      * @return
26      */
27     public static double sub(double v1, double v2) {
28         //将浮点数转为String类型
29         BigDecimal b1 = new BigDecimal(Double.toString(v1));
30         BigDecimal b2 = new BigDecimal(Double.toString(v2));
31         //减法
32         double b = b1.subtract(b2).doubleValue();
33         return  b;
34     }
35 
36     /**
37      * 加法
38      * @param v1
39      * @param v2
40      * @return
41      */
42     public static double add(double v1, double v2) {
43         //将浮点数转为String类型
44         BigDecimal b1 = new BigDecimal(Double.toString(v1));
45         BigDecimal b2 = new BigDecimal(Double.toString(v2));
46         //减法
47         double b = b1.add(b2).doubleValue();
48         return  b;
49     }
50 }

 

posted @ 2020-06-12 02:38  mingmingn  阅读(426)  评论(0)    收藏  举报