1 关系运算符:>,>=,<,<=,==,!=
案例:Demo1
public class Demo1 {
//偶数:能被2整除的整数
//2,4,6,8,10...
//整除:余数为0
//num%2==0 true num是偶数
// false num不是偶数
public static void main(String[] args) {
int num = 99;
boolean result = num%2==0;
System.out.println(num+"是否为偶数"+
result);
}
}
2 Scanner
sun公司设计的Java的工具类,功能是从控制台输入数据。
1)导入工具类(导包)
import java.util.Scanner; //暂时先跟着我写,下周详细讲解
2)根据Scanner工具来创建对象(下周详细讲解)
Scanner sc = new Scanner(System.in);
sc就是Scanner的一个对象,通过sc调用Scanner工具类的功能
3)输入整数:
sc.nextInt(); 从控制台输入任意的一个int类型整数,一般都建议定义一个int类型变量来接收输入的整数。
案例:Demo2
import java.util.Scanner;
public class Demo2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
System.out.println("输入的整数是:"+num);
}
//Demo3:在main方法中创建一个Scanner对象,从
//控制台输入任意的一个整数,并输出
}
import java.util.Scanner;
public class Demo3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
System.out.println(num);
}
}
import java.util.Scanner;
public class Demo4 {
//在main方法中,创建一个Scanner对象,从控制台输入
//任意的一个整数,判断该整数是否为偶数,如果是偶数,
//输出true,反之如果不是偶数,输出false
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
boolean result = num%2==0;
System.out.println(num+"是否为偶数"+
result);
}
}
import java.util.Scanner;
public class Demo5 {
//在main方法中,创建一个Scanner对象,输入任意的
//一个整数,判断该整数是否为奇数,如果是奇数,输出
//true,反之如果不是奇数,输出false
//奇数:1,3,5,7,9....
//奇数:不能被2整除的整数
//num%2!=0 true 奇数
// false 不是奇数
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
boolean result = num%2!=0;
System.out.println(num+"是否为奇数"+
result);
}
}
3 逻辑运算符:&&(逻辑与),||(逻辑或),!(逻辑非)
1)&&:逻辑与,用来连接两个或者多个并且关系的关系表达式,只有当所有的关系表达式都为true,整个表达式才为true,只要有任何一个关系表达式为false,则整个表达式为false。
eg:
int num1=200,num2=500;
boolean result = num1>=200 && num2<100;
true false
false
案例:Demo6
public class Demo6 {
//&&:逻辑与,用来连接多个并且关系的关系表达式,只有
//当所有的关系表达式都为ture,则整个表达式为ture,
//只要有任何一个关系表达式为false,则整个表达式为
//false。
public static void main(String[] args) {
int num1=100,num2=200,num3=500;
boolean result =
num1!=200 && num2>=100 && num3<=500;
// true true true
System.out.println("result="+result);
}
}
2)运算符优先级:
算术运算符>关系运算符>逻辑运算符>赋值运算符
eg:
int num1=100,num2=1000;
boolean result =(num1+100)*2>=300 && num2%4==0
算术 400>=300 && 0==0
关系 true && true
逻辑 true
赋值 把true赋值给result
案例:Demo7
public class Demo7 {
//运算符优先级:
//算术运算符>关系运算符>逻辑运算符>赋值运算符
public static void main(String[] args) {
int num = 100;
boolean result =
num%4==0 && num%100!=0;
//算术 0==0 && 0!=0
//关系 true && false
//逻辑 false
//赋值 把false赋值给result
System.out.println(result);
}
}
import java.util.Scanner;
public class Demo8 {
//在main方法中,创建一个Scanner对象,从控制台输入
//任意的一个整数,判断该整数是否能被4整除并且不能被
//100整除,如果满足条件,输出true,反之输出false
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
boolean result =
num%4==0 && num%100!=0;
System.out.println(num+"是否满足条件"+
result);
}
}
3)||:逻辑或,用来连接多个或者关系的表达式,只要有任何一个关系表达式为true,则整个表达式都为true,只有当所有的关系表达式都为false,则整个表达式才为false。
eg:
int num1=100,num2=200;
boolean result = num1!=100 || num2>num1;
false true
true
案例:Demo9
public class Demo9 {
//||:逻辑或,用来连接多个或者关系的表达式,只要有
//任何一个表达式为true,则整个表达式都为true,只有
//当所有的表达式都为false,则整个表达式才为false。
public static void main(String[] args) {
int num1=100,num2=200,num3=300;
boolean result =
num1+num2<200 || num1+num2>num3;
// false false
// false
System.out.println("result="+result);
}
}
import java.util.Scanner;
public class Demo10 {
//在main方法中,创建一个Scanner对象,从控制台输入
//任意的一个整数,判断该整数是否能被4整除或者能
//被3整除,如果满足条件,输出true,反之,输出false
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
boolean result =
num%4==0 || num%3==0;
System.out.println(num+"是否满足条件"+
result);
}
}
综合案例
闰年:该年份能被4整除并且不能被100整除,或者能被400整除
1)能被4整除并且不能被100整除:
year%4==0&&year%100!=0
2)能被400整除:
year%400==0
3)或者
(year%4==0&&year%100!=0) || year%400==0
Demo11: 在main方法中,创建一个Scanner对象,从控制台输入任意的一个整数作为年份year,判断该年份是否为闰年,如果是闰年,输出true,反之如果不是闰年,输出false
import java.util.Scanner;
public class Demo11 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个年份:");
int year = sc.nextInt();
boolean result =
(year%4==0 && year%100!=0) ||
year%400==0;
System.out.println(year+"是否为闰年:"+
result);
}
}
4)如果直接判断整个表达式的true还是false,不需要对每一个表达式都进行判断。
eg:
int num1=100,num2=1000;
boolean result = num1!=100 && num2>=1000;
false false
boolean result2 = num1==100 || num2!=1000;
true true
5) !:逻辑非,取反
eg:
boolean result1 = ! true;
false
boolean result2 =!(100!=100);
!(false)
true
案例:Demo12
public class Demo12 {
public static void main(String[] args) {
boolean result1 = !true;//false
System.out.println("result1="+result1);
boolean result2 = !false;//true
System.out.println("result2="+result2);
int num1=100,num2=500;
boolean result3 = !(num1+200<=num2);
// !(300<=num2)
// !true
// false
System.out.println("result3="+result3);
}
}
4 条件运算符(三目运算符)
1)格式:
表达式1?表达式2:表达式3
2)语法规则:如果表达式1为true,则表达式2作为当前整个表达式的结果;如果表达式1为false,则表达式3作为当前整个表达式的结果。
eg:
int num1=100,num2=200;
int max = num1>=num2 ? num1 : num2;
案例:Demo13
public class Demo13 {
//条件运算符:
//1 格式: 表达式1 ? 表达式2 :表达式3
//2 语法规则:首先判断表达式1,如果表达式1为true,
//则表达式2作为整个表达式的结果;反之如果表达式1为
//false,则表达式3作为整个表达式的结果。
public static void main(String[] args) {
int num1=5000,num2=1000;
int min = num1<=num2 ? num1 : num2;
System.out.println("较小的数是"+min);
}
}
import java.util.Scanner;
public class Demo14 {
//在main方法中,编写一个Scanner对象,从控制台输入
//任意的两个整数,输出其中较大的整数的值
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第1个整数:");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数:");
int num2 = sc.nextInt();
int max = num1>=num2 ? num1 : num2;
System.out.println("较大的整数是"+max);
}
}
5 Java中语句的结构
1)顺序结构:代码从上往下,每一行都会被执行
2)选择结构:根据条件的不同,选择性执行代码,有的代码被执行,而有的代码没有被执行。
3)循环结构:一段代码反复被执行。
6 if语句(单分支)
1) 格式: if(表达式){
语句
}
2)语法规则:首先判断if中的表达式,如果表达式为true,执行对应if中语句;反之如果表达式为false,不执行任何语句。
eg:
int age = 2;
if(age>=18){
System.out.println("你长大了");
System.out.println("努力工作!");
}
案例:Demo15
public class Demo15 {
//if语句
//1 格式: if(表达式){
// 语句
// }
//2 语法规则:首先判断if中的表达式,如果表达式为
//true,执行if中的语句;如果表达式为false,不执行
//任何语句。
public static void main(String[] args) {
int age = 3;
if(age>=18){
System.out.println("你长大了");
System.out.println("自己养活自己!");
}
}
}
3)注意:
a)if的条件(表达式)跟if语句之间不要出现“;”,容易导致if语句失效。
b)一般把if中的语句都放到一个{}中。
案例:Demo16
import java.util.Scanner;
public class Demo16 {
//在main方法中,创建一个Scanner对象,从控制台输入
//任意的一个整数,判断该整数是否为偶数,如果是偶数,
//输出该整数的值以及是"是偶数",如果不是偶数,不输出
//任何内容
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入任意的一个整数:");
int num = sc.nextInt();
if(num%2==0){//偶数
System.out.println(num+"是偶数");
}
}
}
import java.util.Scanner;
public class Demo17 {
//在main方法中,创建一个Scanner对象,从控制台输入
//任意的一个整数作为年份year,判断该年份是否为闰年,
//如果是闰年,输出该年份以及"是闰年",反之不输出
//任何内容。
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入年份:");
int year = sc.nextInt();
if((year%4==0&&year%100!=0)||
year%400==0){
System.out.println(year+"是闰年");
}
}
}
7 if-else语句
1)格式:
if(表达式){
语句1
}else{
语句2
}
2)语法规则:如果if中表达式为true,执行if中语句1;反之如果if中表达式为false,执行else中语句2。
eg:
int age = 27;
if(age>=18){
System.out.println("你长大了");
}else{//age<18
System.out.println("你还小");
}
3)else后面不直接接条件,因为else本身就是if的相反情况。if-else语句必然执行其中之一。
案例:Demo18
public class Demo18 {
//if-else语句
//1 格式:if(表达式){
// 语句1
// }else{
// 语句2
// }
//2 语法规则:首先判断if中的表达式,如果表达式为true,
//执行if中的语句1;反之如果表达式为false,执行else
//中的语句2
//3 if-else语句必然执行其中的某一个分支。
public static void main(String[] args) {
int age=9;
if(age>=18){
System.out.println("你长大了");
System.out.println("自己养活自己");
}else{//age<18
System.out.println("你还小!");
System.out.println("还能幸福几年!");
}
}
}
浙公网安备 33010602011771号