欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

java大数据开发第四天(javaSE基础)

时间:2023-07-04
1.算术运算符 1.1运算符和表达式

运算符:对常量或者变量进行操作的符号

表达式:用运算符对常量或变量进行操作的符合java语法的式子就可以称为表达式

例子:int a=50; 

           int b=50;

           int c=a+b;

这里的+叫运算符并且是算术运算符;a+b叫表达式,因为+是算术运算符,所以这个表达式叫算术表达式。

1.2算术运算符 符号作用说明+加-减*乘/除获取的是两个数据做除法的商%取余获取的是两个数据做除法的余数

整数相除只能得到整数,要想得到小数必须有浮点数参与运算

例如:int a=10;

           int b=3;

           int c=a/b;

           Systm.out.println(c);

结果为3而不是3.3333,因为除法运算得到的结果是两个数据做除法的商。

 1.3字符的“+”操作

拿字符在计算机底层对应的数值来计算的

‘A'-------->65,A-Z是连续的

'a'--------->97,a-z是连续的

'0'-------->48,0-9是连续的

算术表达式在包含多种数据类型时,整个算术表达式的类型会自动进行提升

提升规则:

byte、short、char类型自动转换为int类型

整个表达式饿类型自动提升为表达式中等级最高的类型

byte、short、char----->int----->long----->float----->double    

1.4字符串的"+"操作

①当"="出现在两个字符串中间时,它代表的是一个连接符,而不是运算符,

例如:String s1="zbc";

           String s2="123";

           Systm.out.println(s1+s2);

输出结果是zbc123

②当“+”出现在字符串中时,就是连接运算符,否则就是算术运算符,当连续执行"+"操作时,从左到右依次执行

例如:“我”+“爱你”+1+99+“年”

大家认为这个代码运行的结果是什么?我爱你100年?结果应该是我爱你199年。

例二:1+99+“年”+“前”’“我”+“爱你”

这个代码的运行结果是100年前我爱你

public class OperatorDemo03{ public static void main(String[] args){ System.out.println("I"+"LOVE"+1000+0+"year"); System.out.println(1000+9000+"ago"+"I"+"LOVE"+"year"); }}

2.赋值运算符 符号作用说明=赋值a=10,将10赋给变量a+=加后赋值a+=b,将a+b的值赋给a-=减后赋值a-=b,将a-b的值赋给a*=乘后赋值a*=b,将a*b的值赋给a/=除后赋值a/=b,将a/b的商赋给a%=取余后赋值a%=b,将a%b的余数赋给a

 

public class OperatorDemo{public static void main(String[] args){//把10赋值给int类型的变量iint i = 10;System.out.println("i:"+i);//+=把左边和右边的数据做加法操作,结果赋值给左边i += 20;//i = i+20;System.out.println("i:"+i);//注意:扩展的赋值运算底层隐含了强制类型转换的含义short s = 20;//s += 20;//s = (short)(s+20);System.out.println("s:"+s);}}

3.自增自减运算符 符号作用说明++自增变量的值加1--自减变量的值减1

 i++与++i的区别:

i++是先将i参与运算,后进行自增操作;++i是先进行自增操作,用自增后的i去运算;

例如:int i=0;

           int a =i++;

这里的a是0;如果把上面的i++换成++i,那么a的值就是1。

public class OperatorDemo04{public static void main(String[] args){//定义变量int i =1;System.out.println("i:"+i);//单独使用i++;//++i;System.out.println(i);//参与操作使用int j = i++;int j =++i;System.out.println("i:"+i);System.out.println("j:"+j);}}

4.关系运算符 符号作用==a==b,判断a是否等于b,成立为true,不成立为false!=a!=b,判断a是否等于b,不成立为true,成立为false>=a>=b,判断a是否大于等于b,成立为true,不成立为false<=a<=b,判断a是否小于等于b,成立为true,不成立为falsea>b,判断a是否大于b,成立为true,不成立为false

 注意:关系运算符的结果都是boolean类型,只有true和false,千万不要把"=="误写成"="

public class OperatorDemo05{public static void main(String[] args){//定义变量int i =100;int j =200;int k =300;//==System.out.println(i==j);System.out.println(i==k);System.out.println("-----------");//!=System.out.println(i!=j);System.out.println(i!=k);System.out.println("-----------");//>System.out.println(i>j);System.out.println(i>k);System.out.println("------------");//=System.out.println(i>=j);System.out.println(i>=k);System.out.println("------------");//不小心把==写成=//把j的值赋值给了i,然后输出i的值System.out.println(i=j);}}

5.逻辑运算符

在数学中有3

先拆解这个算式为:x>3和x<8

合并后就是:x>3&&x<8

&&就是一个逻辑运算符

我们可以说逻辑运算符就是连接关系表达式的运算符,当然逻辑运算符也可以直接连接布尔类型的常量或变量

符号作用说明&逻辑与a&b,a和b都为true,结果为true,否则是false!逻辑非!a,结果与a相反^逻辑异或a^b,a和b的结果不同为true,相同为false|逻辑或a|b,a和b都是false,否则是true

public class OperatorDemo06{public static void main(String[] args){//定义变量int i = 10;int j = 20;int k = 30;//& 有false则falseSystem.out.println((ij)&(ik));//true &falseSystem.out.println((i>j)&(i>k));//false & falseSystem.out.println("---------------");//| 有true则trueSystem.out.println((ij)|(ik));//true |falseSystem.out.println((i>j)|(i>k));//false | falseSystem.out.println("---------------");//^ 相同为false,不同为trueSystem.out.println((ij)^(ik));//true ^falseSystem.out.println((i>j)^(i>k));//false ^ falseSystem.out.println("---------------");//!与原值相反System.out.println(!(i

6.短路逻辑运算符  符号作用说明&&短路与与逻辑&作用相同,但是有短路效果||短路或与逻辑或作用相同,但是有短路效果

 注意事项:

逻辑与&,无论左边真假,右边都要执行短路与&&,如果左边为真,执行右边;如果左边为假,右边不执行逻辑或|,无论左边真假,右边都要执行短路或||,如果左边为假,执行右边;如果左边为真,右边不执行7.三元运算符

格式:关系表达式?表达式1:表达式2

范例:a>b?a:b

计算规则:①先计算关系表达式的值

                  ②如果关系表达式的值为true,则输出a

                  ③如果关系表达式的值为false,则输出b

public class OperatorDemo08{public static void main(String[] args){//定义两个变量int a = 100;int b = 200;//获取两个数据中的最小值int min = a

 8.数据输入

调用Scanner类步骤:

①导包:import java.util.Scanner;

②创建对象:Scanner sc = new Scanner(System.in);

③接收数据:int x = sc.nextInt();

import java.util.Scanner;public class ScannerDemo{public static void main(String[] args){//创建对象System.out.println("请输入数据:");Scanner sc = new Scanner(System.in);//接收对象int x = sc.nextInt();//输出数据System.out.println("x:"+x);}}

9.案例 9.1 两只老虎

需求:动物园里有两只老虎,一只老虎重200kg,另一只老虎重180kg,请用程序实现两只老虎体重是否相同。

public class TwoTiger{public static void main(String[] args){//定义变量int t1=180;int t2=200;//比较体重boolean value=t1==t2?true:false;System.out.println("value:"+value);}}

9.2三个和尚

需求:一座寺庙里有3个和尚,已知他们的身高分别是150cm、210cm、165cm,请用程序实现他们的最高身高。

public class ThreeMonks{public static void main(String[] args){//定义变量int a=150;int b=210;int c=165;//获取身高int max1=a>b?a:b;int max2=max1>c?max1:c;System.out.println("the highest is:"+max2+"cm");}}

9.3三个和尚升级版

 需求:一座寺庙里住着三个和尚,他们的身高必须经过测量得出,请用程序实现获取这三个和尚的最高身高。

import java.util.Scanner;public class ThreeMonks02{public static void main(String[] args){//从键盘获取三个和尚的身高,并赋值给变量m1,m2,m3System.out.println("请输入和尚1的身高:");Scanner sc = new Scanner(System.in);int m1 = sc.nextInt();System.out.println("请输入和尚2的身高:");int m2 = sc.nextInt();System.out.println("请输入和尚3的身高:");int m3 = sc.nextInt();//比较三个和尚的身高int max1 = m1>m2?m1:m2;int max2 = max1>m3?max1:m3;//输出三个和尚的最高身高System.out.println("三个和尚的最高身高是:"+max2);}}

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。