码迷,mamicode.com
首页 > 编程语言 > 详细

java基础_第02章:运算符

时间:2018-01-23 23:16:51      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:表达式   引用   目标   ...   重载   ima   程序   stat   关系   

掌握Java中标识符的定义;
掌握Java中数据类型的划分以及基本数据类型的使用原则;
掌握Java运算符的使用;
掌握Java分支结构、循环结构、循环控制语法的使用;
掌握方法的定义结构以及方法重载的概念应用。

Java中的注释
// 注释:单行注释;
/* ... */‘:多行注释;
/** ... */:文档注释。
Java中的关键字

技术分享图片

Java基本数据类型的大小、范围、默认值
No. 数据类型 大小/位 可表示的数据范围 默认值
1 byte(字节) 8 -128 ~ 127 0
2 short(短整型) 16 -32768~32767 0
3 int(整型) 32 -2147483648 ~ 2147483647 0
4 long(长整型) 64 -9223372036854775808 ~ 9223372036854775807 0
5 float(单精度) 32 -3.4E38(-3.4?1038) ~ 3.4E38(3.4?1038) 0.0
6 double(双精度) 64 -1.7E308(-1.7?10308)~ 1.7E308(1.7?10308) 0.0
7 char(字符) 16 0 ~ 255 ‘\u0000‘
8 boolean(布尔) - true或false false

int型常量转换为long型常量,使用“数字L”、“数字l(小写的字母L)”完成;
int型变量转换为long型变量,使用“(long) 变量名称”
将int型变量变为double型变量:(double) 变量名称

类型强转:(目标数据类型) 变量

public class TestDemo {
    public static void main(String args[]) {
        int max = Integer.MAX_VALUE;    // 取出最大值
        int min = Integer.MIN_VALUE; // 取出最小值
        // int变量 ± long型常量 = long型数据
        System.out.println(max + 1L); // 最大值加1:2147483648
        System.out.println(min - (long) 1); // 最小值减1:-2147483649
        // long变量 ± int型常量 = long型数据
        System.out.println((long) min - 2); // 最小值减2:-2147483650
    }
}
程序执行结果:
2147483648(“System.out.println(max + 1L)”语句输出)
-2147483649(“System.out.println(min - (long) 1)”语句输出)
-2147483650(“System.out.println((long) min - 2)”语句输出)

字符可以和int型互相转换(以编码的形式出现)
public class TestDemo {
    public static void main(String args[]) {
        char c = ‘A‘ ;  // 字符
        int num = c ;// 字符可以和int型互相转换(以编码的形式出现)
        System.out.println(c) ;
        System.out.println(num) ;
    }
}
程序执行结果:

A(“System.out.println(c)”语句输出)
65(“System.out.println(num)”语句输出)

public class TestDemo {
    public static void main(String args[]) {
        char c = ‘A‘;   // 大写字母
        int num = c;    // 需要将字符变为int型才可以使用加法计算
        num = num + 32;     // 变为小写字母的编码
        c = (char) num;     // 将int变为char型
        System.out.println(c);
    }
}

程序执行结果: a
布尔型

布尔型是一种逻辑结果,主要保存两类数据:true、false,这类数据主要用于一些程序的逻辑使用上。

public class TestDemo {
    public static void main(String args[]) {
        boolean flag = false ;  // 布尔只有两种取值:true、false
        if (!flag) {    // if(布尔值) {满足条件的操作}
            System.out.println("Hello World .") ;
        }
    }
}
程序执行结果:
Hello World .
String型

String属于引用数据类型(它属于一个类,在Java里面只要是类名称,每一个单词的首字母都是大写的),但是这个类的使用比较特殊。
String表示的是一个字符串,即:多个字符的集合,String要求使用双引号“"”声明其内容。

public class TestDemo {
    public static void main(String args[]) {
        String str = "Hello World !";   // 字符串变量
        System.out.println(str);        // 输出字符串变量
        System.out.println("Hello World !");    // 输出字符串常量
    }
}
程序执行结果:
Hello World !
Hello World !
字符串连接

在字符串的操作中,如果要改变内容,则可以使用“+”进行字符串的连接操作。

public class TestDemo {
    public static void main(String args[]) {
        String str = "Hello";
        str = str + " World ";      // 字符串连接
        str += "!!!";       // 字符串连接
        System.out.println(str);
    }
}
程序执行结果:
Hello World !!!

运算符

Java运算符(1)

技术分享图片

关系运算符

关系运算符的主要功能是进行数据的大小关系比较,返回的结果是boolean型数据(只有true、false两种取值),常用的关系运算符有:大于(>)、大于等于(>=)、小于(<)、小于等于(<=)、等于(==)、不等于(!=)。

public class TestDemo {
    public static void main(String args[]) {
        System.out.println("3 > 1 = " + (3 > 1));   // 使用大于号
        System.out.println("3 < 1 = " + (3 < 1));   // 使用小于号
        System.out.println("3 >= 1 = " + (3 >= 1)); // 使用大于等于号
        System.out.println("3 <= 1 = " + (3 <= 1)); // 使用小于等于号
        System.out.println("3 == 1 = " + (3 == 1)); // 使用等于号
        System.out.println("3 != 1 = " + (3 == 1)); // 使用不等于号
    }
}

程序执行结果: 
3 > 1 = true
3 < 1 = false
3 >= 1 = true
3 <= 1 = false
3 == 1 = false
3 != 1 = false
数学运算符

数学运算符是在开发之中经常使用到的,例如,进行四则运算、求模、自增等。

public class TestDemo {
    public static void main(String args[]) {
        int numA = 10;
        int numB = 20;
        System.out.println("加法计算:" + (numA + numB));
        System.out.println("减法计算:" + (numA - numB));
        System.out.println("乘法计算:" + (numA * numB));
        System.out.println("除法计算:" + (numA / (double) numB));
    }
}

程序执行结果: 加法计算:30
减法计算:-10
乘法计算:200
除法计算:0.5
模运算

“模”也是在开发之中较为常见的计算,所谓的“模”实际上就是余数的概念,例如:10 ÷ 3的结果是商3余1,其中余数1就是“模”,对于求模,可以使用“%”运算符。

public class TestDemo {
    public static void main(String args[]) {
        int numA = 10;
        int numB = 3;
        System.out.println(numA % numB);
    }
}

程序执行结果: 1
简化运算符

虽然Java提供了四则运算操作,但是为了简化用户的编写,在运算符里面又提供了一些简化运算符:*=、/=、+=、-=、%=,这些运算符表示参与运算后直接进行赋值操作

public class TestDemo {
    public static void main(String args[]) {
        int num = 10;
        num *= 2;       // 等价:num = num * 2 ;
        System.out.println(num);
    }
}

程序执行结果: 20
自增与自减运算
还有一类运算符是“++”(自增)、“--”(自减),它根据位置不同,执行的顺序也不同;
++变量、--变量:先在前面表示的是先进行变量内容的自增1或自减1之后再使用变量进行数学计算;
变量++、变量--:先使用变量内容进行计算,而后再实现自增或自减的操作。
观察自增一
public class TestDemo {
    public static void main(String args[]) {
        int numA = 10;          // 定义整型变量
        int numB = 20;          // 定义整型变量
        // “++”写在变量前面,表示先对numA的变量内容加1
        // 使用处理后的numA变量的内容 + numB变量的内容
        int result = ++numA + numB;
        System.out.println("numA = " + numA);
        System.out.println("result = " + result);
    }
}

程序执行结果:
numA = 11
result = 31
观察自增二
public class TestDemo {
    public static void main(String args[]) {
        int numA = 10;          // 定义整型变量
        int numB = 20;          // 定义整型变量
        // “++”写在后面,表示先使用numA的内容进行加法计算
        // 加法计算完成之后在对numA的内容进行自增
        int result = numA++ + numB;
        System.out.println("numA = " + numA);
        System.out.println("result = " + result);
    }
}
程序执行结果: 
numA = 11
result = 30
三目运算

三目是一种赋值运算的形式,执行三目的时候可以以一个布尔表达式的结果进行赋值,基本的语法结构如下:
数据类型 变量 = 布尔表达式 ? 满足此表达式时设置的内容 : 不满足此表达式时设置的内容 ;

public class TestDemo {
    public static void main(String args[]) {
        int numA = 10;  // 定义int型变量
        int numB = 20;  // 定义int型变量
        // 如果numA大于numB,返回true,则将numA的内容赋值给max
        // 如果numA小于numB,返回false,则将numB的内容赋值给max
        int max = numA > numB ? numA : numB;
        System.out.println(max);
    }
}
程序执行结果: 20
逻辑运算

逻辑运算一共包含三种:与(多个条件一起满足)、或(多个条件有一个满足)、非(使用“!”操作,可以实现true变false与false变true的结果转换),而与和或操作的真值表

No. 条件1 条件2
1 true true true true
2 true false false true
3 false true false true
4 false false false false
非运算
public class TestDemo {
    public static void main(String args[]) {
        boolean flag = true;        // 定义布尔型变量
        System.out.println(!flag);  // 对变量结果进行非操作
    }
}

程序执行结果: false
观察普通与“&”
public class TestDemo {
    public static void main(String args[]) {
        if ((1 == 2) & (10 / 0 == 0)) {// 使用普通与判断多个条件
            System.out.println("Hello World !");
        }
    }
}

程序执行结果:
Exception in thread "main" java.lang.ArithmeticException: / by zero
    at com.xusan.TestDemo.main(TestDemo.java:5)

使用短路与(&&)
public class TestDemo {
    public static void main(String args[]) {
        if ((1 == 2) && (10 / 0 == 0)) {
            System.out.println("Hello World !");
        }
    }
}

没有输出,不抛出错误,“&&”执行前面的语句,为假则不执行后面的语句
观察普通或操作(|)
public class TestDemo {
    public static void main(String args[]) {
        if ((1 == 1) | (10 / 0 == 0)) {
            System.out.println("Hello World !");
        }
    }
}
程序执行结果: 
Exception in thread "main" java.lang.ArithmeticException: / by zero
    at TestDemo.main(TestDemo.java:3)
观察短路或操作(||)
public class TestDemo {
    public static void main(String args[]) {
        if ((1 == 1) || (10 / 0 == 0)) {
            System.out.println("Hello World !") ;
        }
    }
}
程序执行结果: Hello World !
位运算

位运算在Java之中存在:&、|、^、~、>>、<<、>>>,而所有的位运算都是采用二进制数据进行操作的,基本的二进值数据操作结果如表所示。

实现位与操作
public class TestDemo {
    public static void main(String args[]) {
        int numA = 9;       // 定义整型变量
        int numB = 11;          // 定义整型变量
        System.out.println(numA & numB);    // 位与操作 
    }
}
程序执行结果: 9
实现位或操作

public class TestDemo {
    public static void main(String args[]) {
        int numA = 9;   // 定义整型变量
        int numB = 11;  // 定义整型变量
        System.out.println(numA | numB);// 位或操作 
    }
}
程序执行结果: 11

java基础_第02章:运算符

标签:表达式   引用   目标   ...   重载   ima   程序   stat   关系   

原文地址:https://www.cnblogs.com/xuwei1/p/8338133.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!