赞
踩
运算符
运算符是一种特殊符号,用来表示数据的运算、赋值和比较等。
java中的运算符可分为一下几种:
1.赋值运算符
2.算术运算符
3.比较运算符
4.逻辑运算符
5.位运算符
6.三目运算符(不是三目童子!)
赋值运算符:
java的赋值运算符用作与为变量指定变量值,赋值预算符 符号是 "=" ;
这段程序要从右向左看,计算机是先计算出右边数据,再给左边赋值!
算术运算符:
java的算术运算符比较好理解, 加(+/++)、减(-/--)、乘(*)、除(/)、求余(%)
/*** 运算
*@authorGMZ
**/
public classComputations {public static voidmain(String[] args) {//这一步先不管
Computations c = newComputations();//声明并给变量赋值
double num_a = 5.2;double num_b = 3.1;
System.out.println(c.plus(num_a,num_b));//相加 8.3
System.out.println(c.reduce(num_a,num_b));//相减 2.1
System.out.println(c.except(num_a,num_b));//除 大约 1.7
System.out.println(c.ride(num_a,num_b));//乘 16.12
System.out.println(c.remain(num_a,num_b));//取余 2.1
}/*** 求和 "+" 号运算符
*@paramnum_a
*@paramnum_b
*@return
*/
public double plus(double num_a,doublenum_b){double sum = 0;//相加 并获得结果,赋值与sum
sum = num_a +num_b;returnsum;
}/*** 减 "-" 号运算符
*@paramnum_a
*@paramnum_b
*@return
*/
public double reduce(double num_a,doublenum_b){double resultNum = 0;//相减 并获得结果,赋值与resultNum
resultNum = num_a -num_b;returnresultNum;
}/*** 除 "/" 号运算符
*@paramnum_a
*@paramnum_b
*@return
*/
public double except(double num_a,doublenum_b){double resultNum = 0;//相除 并获得结果,赋值与resultNum
resultNum = num_a /num_b;returnresultNum;
}/*** 乘 "*" 号运算符
*@paramnum_a
*@paramnum_b
*@return
*/
public double ride(double num_a,doublenum_b){double resultNum = 0;//相乘 并获得结果,赋值与resultNum
resultNum = num_a *num_b;returnresultNum;
}/*** 取余 "%" 号运算符
*@paramnum_a
*@paramnum_b
*@return
*/
public double remain(double num_a,doublenum_b){double resultNum = 0;//取余 并获得结果,赋值与resultNum
resultNum = num_a %num_b;returnresultNum;
}
其实还有两个比较常用的,也就是自加与自减:
/*** 运算Demo
*@authorGMZ
**/
public classComputation {public static voidmain(String[] args) {int num_a = 5;int num_b = 2;
System.out.println(num_a++);//a 自加 结果6 ++在后
System.out.println(++num_a);//a 自加 结果6 ++在前
System.out.println(num_b--);//b 自减 结果1 ++在后
System.out.println(--num_b);//b 自减 结果1 ++在前//++ 与 -- 同理
int resultNum = 0;//这个是 a先执行自加(++) 然后与b 相加
resultNum = ++num_a +num_b;
System.out.println(resultNum);//结果为 8//这个是 a先与b执行相加 然后进行自加
resultNum = num_a++ + num_b; //结果为 8
}
}
比较运算符:
java中的比较运算符与常见的比较符大多一样(除了相等)。>(大于)、=(大于等于)、 <=(小于等于)、 !=(不等)
逻辑预算符:
逻辑预算符 包括有 或("||" / "|")、与("&&" / "&")、非("!")以及异或("^");
一般逻辑运算符是和比较运算符一起用的,||与|的区别 和 &&与&的区别一样,后者不短路,简单来说 例:一个表达式(1 > 2 && 1 < 5 )和(1 > 2 & 1 < 5)其最后的作用是一样的,但是前者第一个条件也就是1>2不 成立,为false时 前者则不在去运算后面的1<5 而后者则是不管前面条件成立与否,一样计算后面的表达式 及1<5,但是结果一样。具体运用场景在以后会慢慢掌握。
位运算符:
位运算符在这里不多讲,因为运用的不多,有兴趣的可以留言,人多的话,我单独拿出来一期做位运算符,这里就知道它是可以算术运算符和赋值运算符结合,从而可以扩展为强大的运算符。
三目运算符:
三目运算符的语法为 (expression) ? if-true-statement : if-false-statement 这样看比较乱 直接 上代码
三目运算符在工作中使用的还是比较多的(当然也可以被替代),三目还有更复杂的比如三目中的三目,多重三目。有兴趣可以自己敲一下
在运算符这里,有几个小知识点,
不要把一个表达式写的太复杂,第一是不便于自己去维护,更不便于别人去读你的代码,如果是一个很负责的表达式,你可以拆开来写,尽量简化
不要以来运算符的优先级去去控制表达式执行顺序,尽量使用()去控制它的执行顺序。下面附上运算符的执行顺序表以上到下等级也是如此
流程控制
先来说说流程控制吧,不管哪种语言都是有流程控制的,而且都会提供两种基本控制结构:分支结构和循环结构。
简单来说:分支结构就是,我今天吃了早饭 就去上学,没吃就不去。吃或者没吃就是条件,去或者不去就是结果,根据条件去选择结果。
分支结构:
/*** 流程控制
*@authorGMZ
**/
public classControl {public static voidmain(String[] args) {int a = 20;int b = 10;//第一种
/**if(logic expression)
*{
* statement..
*}*/
if(a > 30){//打印一句话
System.out.println("假如a大于30我就执行了!");//可是表达式 a>30 返回的结果是false 所以这句话并没有执行
}//第二种
/**if(logic expression)
*{
* statement..
*} else {
* statement...
*}*/
if(a > 30){//打印一句话
System.out.println("假如a大于30我就执行了!");//可是表达式 a>30 返回的结果是false 所以这句话并没有执行
} else{//打印一句话
System.out.println("假如a大于30不成立(即返回值是false时)我就执行了!");//这个时候就执行了这句话
}//第三种
/**if(logic expression)
*{
* statement..
*} else if(logic expression) {
* statement...
*}....后面可以添加无数个else if()*/a= 45;if(a > 20){
System.out.println("当a大于20小于等于40时,我执行!");
}else if(a > 40){
System.out.println("当a大于40小于等于60时,我执行!");
}else if(a > 60){
System.out.println("当a大于60时,我执行!");
}
}
}
下面是switch分支语句,
switch语句由一个控制表达式和多个case标签组成,与if语句不同的是,switch语句后面的控制表达式的数据类型只能是byte、short、char、int四种整数类型,枚举类型和java.lang.String类型(从java7版本后才允许String),不能用boolean类型。
语法:
switch(expression)
{
case condition1:
{
statement(s)
break;
}
case condition2:
{
statement(s)
break;
}
case conditionN:
{
statement(s)
break;
}
Default:{
Statement(s)
}
}
看着很烦、冗长,直接来代码把。
//switch结构
String index="1";switch(index){ //这里的index 可以是 String、 byte、short、char、int类型的变量
case "1": //第一个条件
System.out.println("这里写匹配到\"1\"后,所做的操作!");break;case "2": //第二年个条件
System.out.println("这里写匹配到\"2\"后,所做的操作!");break;case "3": //第三个条件
System.out.println("这里写匹配到\"3\"后,所做的操作!");break;default:
System.out.println("当index的值不存在任何一个条件可以匹配时,走这里!");break;
}
循环结构:
//while循环
while(1==1)//这里写while循环表达式,如果返回值是true则进入循环体,反之则程序向下执行
{
System.out.println("如果表达式成立,我就打印啦!(现在1==1肯定是true 所以当前是无限循环!)");
}//do while循环
do{
System.out.println("无论如何我肯定执行一次!后判断表达式的结果是否是true,如果是则继续执行");
System.out.println("与while不同的是,do while 是一定执行一次。后面与while 无异");
}while (1==1);//for循环//for循环的表达式与其他两个不同//下面三个用分号分开的分别是:初始条件、循环条件、循环迭代语句
for (int i = 0; i < 5; i++)
{
System.out.println("我们的初始条件是0,每次我打印一次,i就会自加1,直到i>=5的时候,这个循环体 就会停止循环");
}//那个while与do while也可以迭代,但是迭代是在循环体内
int index_num=1;while(1==1)
{
index_num++;//这段代码意思是循环每执行一次,num就自加1 直到 num>=5的时候跳出这个循环体,//这里我们用了一个break关键字,去跳出循环体 do while与这个相同。//break的意思可以理解为,代码执行到它那里,它会跳出当前的循环体,关键词当前的循环体!!!!!!
if(index_num>=5){break;
}//还有个关键字也是与循环体有关的//continue关键字的意思是,当代码执行到它,循环回到开头,即回到表达式处,继续计算表达式,继续执行代码块//也就是它是跳过,它下面的代码继续执行循环体。//break则是直接跳出循环体,不在执行当前循环体。
if(index_num == 3){continue;
}
System.out.println("================>我执行啦!!");
}
数组是编程语言中最常见的一种数据结构,来用于储存多个数据。每个数组元素存放一个数据。通常可通过数组元素的索引(也可以理解为下标)来访问数组元素,包括为数组的元素赋值和取出数组元素的值。
其实可以理解数组是一种数据类型,因为java中的数组要求数组的元素具有相同的数据类型,所以呢在一个数组中元素的数据类型是唯一的。也就说一个数组中只能储存一种数据类型的数据,不能储存多种数据类型。
本来这期是打算把数组做完的,但是看到了数组可能用到了面对对象的思想,更是用到的了java的继承与多态,所以放到下一期专做一期。
(最近可不是犯懒啊,是有些事耽搁了,而且带不了电脑。过两天可能就比较忙了,要新做一个公众号开发 - -! 加油!)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。