浮点数的比较&初识String

2016-02-21  本文已影响108人  JA尐白
小心使用浮点数进行比较

浮点数没有绝对的相等,只有近似的相等。Java中只有整数才有绝对的相等。

例如:

public class CompareUsingSub {

    public static void main(String[] args){

        double a = 9*3.1415926/7.56789*1.145926;    // 浮点数运算

        double b = 9*3.1415926/7.56789*1.145926;        // 当两个浮点数的差小于一个我们规定的足够小的数

        // 那么就可以看做他们是相等的

        double equal = (a-b<0.00000001)&&(b-a<0.00000001);

        System.out.println(equal);

    }

}


结果:true

1、最好不要对浮点数进行相等比较。要用它们的差的绝对值与一个我们关心的精度进行比较,来判断两个浮点数是否相等。

2、编程中一般使用“||”和“&&”。

String————char串起的项链

char类型的变量代表一个字符,这个字符可以是英文字符,也可以是中文字符。

给字符变量赋值的语法是 “char变量名”+“=”+“‘”+“一个字符”+“’” 。

例如:char charA =‘A';

char charB =‘中';

错误写法:char charA = A;

这里将字符A赋值给char变量charA。但是Java却无从知道等号右边的A是什么意思:A是代表一个变量呢?还是代表一个字符A呢?所以,为了避免这种困惑,Java语法中规定,如果要表示一个字符,必须用一对单引号将这个字符括起来。单引号之间只能有一个字符,这是因为char变量只能储存一个字符。
在Java中,用双引号将一串字符括起来,这就创建了一个字符串。不要把字符串跟Java中的字符弄混了,字符是使用单引号的。字符串类型在Java中是使用String表示的。

可以认为,String类型就是将一定数量的char类型变量组装起来后形成一个新的类型。可以想象用线将char变量串成一个项链,然后就得到了一个String。

String类型的“加法”运算

与算术中的相加不同,对于字符串的相加其运算规则是将两个字符串的内容拼接起来。而且加法是字符串唯一允许的运算,是Java对字符串类型的“特殊照顾”。

例如:

public class UsingString {

    public static void main(String[] args){

        String emptyStr = "";            // String的长度可以是0到足够大

        String str1 = "字符串中可以同时使用中文和English";      // 字符串中可以中英文混合使用

        String str2 = "。";          // 对于字符串,即使只包含一个字符,也要用双引号

        String plusStr = str1 + str2;      // 字符串可以“相加”

        System.out.println(plusStr);

    }

}

结果:字符串中可以同时使用中文和English。

String类型与基本类型的“加法”运算

Java会帮我们把基本变量转换成的字符拼接到字符串中。当字符串和基本变量进行相加的时候,需要注意运算顺序。

例如:

public class StringAddPrimer{

    public static void main(String[] args) {

        int a = 5;

        int b = 7;

        String str1 = "将数字的字符拼接到字符串中" + a;

        String str2 = a+b+"加法是从左到右运算的";

        String str3 = "加法是从左到右运算的"+a+b;

        String str4 = "我们可以使用括号改变运算顺序"+(a+b);

        String str5 = "我们可以使用字符串将两个变量分开"+a+“”+b;

        System.out.println(str1);

        System.out.println(str2);

        System.out.println(str3);

        System.out.println(str4);

        System.out.println(str5);

    }

}

结果:将数字的字符拼接到字符串中:5

12加法是从左到右运算的

加法是从左到右运算的:57

我们可以使用括号改变运算顺序:12

我们可以使用空字符串将两个变量分开 57

上一篇下一篇

猜你喜欢

热点阅读