流程控制

流程控制

声明以下的代码中包含该节课程的内容且以下代码只展示项目中的类名及以下代码。
1.public class Demo {
	public static void main(String[] args) {
		//赋值运算符 , = , 扩展赋值运算符, +=  -=  /=(除以) .....
		/*了解位运算符,12-->二进制  可以使用 8421法,类似于 万 千 百 十  个;
		 * 
		 * &	|	~ 	^	>>		>>>		<<		1:真  	0:假;;
		 * 7--->二进制为:0111
		 * 12--->二进制为:1100
		 * 
		 */
		int m=7,n = 12;
		System.out.println(m&n);
		//0111
		//1100
		//m&n 即对应的二进制 1 与 0 取布尔值
		//因此结果为:0100  即输出4
		System.out.println(m|n);
		//同理即输出:15
		System.out.println(m>>1);
		//m的二进制4位右移一位,前面空出的一位补0;
		//即为:0011
		//打印出:3。
	}

}




2.public class Three {
	public static void main(String[] args) {
		/*
		 * 三目运算,三个表达式组成的一个运算
		 * 表示式1 ? 表达式2 : 表达式3;
		 * 表达式1 是一个条件表达式 , 结果是个boolean 类型
		 * 表达式2和表达式3 选一个执行
		 * 
		 */
		int m = 10;
		int n = 20;
		
		boolean bool = m++%2!=0 ? n++>0 : m++<0;
		//显然m%2==0,此时m=11,执行m<0返回true,此时m=12;
		System.out.println(bool);
		//输出false
		System.out.println("m="+m);
		//输出m=12
		System.out.println("n="+n);
		//输出n=20
		
		//算法,比较,逻辑,赋值,位,三目;
		//顺序:先单目(+-),先乘除后加减,先比较后逻辑 , 最后赋值 (可加小括号,便于顺序)
		//转义字符: \n    \t    \'    \"    \\    \r(回车) ........
		System.out.println("\"我\"\t和\t\"你\"");
		System.out.println("1111");
		//打印1111后    光标换行   
		System.out.print("2222");
		//打印2222后   光标不换行
		System.out.println();
		//什么都不打印  只换行
		
		//做一个小练习吧:打印如下格式的内容:
		//"name"	"sex"	"age"
		//张三		男		18
		
		System.out.println("\"name\"\t\"sex\"\t\"age\"");
		System.out.println("张三\t男\t18");
	}

}

3.public class SwapTwoValue {
	public static void main(String[] args) {
		int m =10, n= 20;
		//交换m 与 n 的值
		int p = m;  //把m变量的值  复制一份  赋值给p
		m = n;
		n = p;
		System.out.println("m="+m+"n="+n);
		
		//另一种方法:
		int w = 10, v = 20;
		w = v + (w=v)*0;
		//相当与 w = 20 + (v=10)*0;
		//这也说明了:在=右边	整体结果没有计算出来之前,使用w和v  会取当前值!
		System.out.println("w="+w+"v="+v);
		//当然还有几个方法可以完成交换变量的值,但是只有使用第三个变量的方法最为常用!
	}

}


4.import java.util.Scanner;

public class UseScan {
	public static void main(String[] args) {
		/*java在   utill包下  提供了 一个 类型 Scanner 扫描器,可以把文件中的数据  或者  键盘上的输入  扫描为程序中的数据;
		 * java 有很多包,lang包  语言包  基础包  ,他里面的类型  使用时  直接使用 , 其他包下的类型  使用时需要  导入!
		 * 
		 */
		//声明scanner 类型的变量 名为sc  指向  新建的扫描器(对象) 针对系统输入去扫描
		Scanner sc = new Scanner(System.in);
		
		//sc引用扫描器  间接的我们就称sc是那个扫描器
		
		System.out.println("请输入你的名字:");
		
		//使用扫描器的 next()来把  键盘上的输入信息 扫描为  字符串
		String name = sc.next();
		System.out.println("请输入你的年龄:");
		
		//使用扫描器的nextInt()来把  键盘上的输入信息 扫描为 int 
		int age = sc.nextInt();
		
		System.out.println("你的名字:"+name+"\t你的年龄:"+age);
	}

}


5.import java.util.Scanner;

public class If1 {

	public static void main(String[] args) {
		//1:顺序顺序,最常见的流程,自上至下的执行!
		//2:分支流程,java使用if语句 和 switch语句 来实现。
		//一: if
		//A:单独的if , //要么执行  要么不执行!
		/*
		 * if(条件表达式){
		 * 			语句块;
		 * }
		 * 条件表达式  结果为boolean
		 * 语句块:0-N句代码;
		 * {}代表局部
		 */
		Scanner input = new Scanner(System.in);
		System.out.println("周几?");
		String week = input.next();
		if ("周一".equals(week)) {
			System.out.println("站队升旗!");
		}
	}

}

6.import java.util.Scanner;

public class If2 {

	public static void main(String[] args) {
		/*
		 * if(条件表达式){
		 * 		语句块1;
		 * }
		 * else{
		 * 		语句块2;
		 * }
		 * 
		 * 
		 * 局部变量:声明在方法内部	或     某语句内部	或	某局部内部    的  变量
		 * 局部变量:1.先声明       2:有初始化     3:在局部变量的      生命周期   内  不能出现  重名  的局部变量
		 * 局部变量的声明周期:自声明局部变量起,到包裹局部变量的局部{}结束。
		 * 局部变量可以尽快释放内存!
		 */
		{
			double num;   //num的生命周期(使用范围) 从这一行到25行
			num = 10.9;
			System.out.println(num);
		}
		Scanner sc = new Scanner(System.in);
		System.out.println("你的性别:");
		String sex = sc.next();
		if ("女".equals(sex)) {
			float a = 10.1f;//a的使用范围  本行 到 32行;
			System.out.println("恭喜你,即将进入女子组");
		}
		else {
			System.out.println("恭喜你,即将进入男子组");
		}
		//目前   我们的代码都写在main方法中 所以目前我们的声明的变量都是局部变量
	}

}


7.import java.util.Scanner;

public class If3 {
	public static void main(String[] args) {
		//键盘输入你的成绩,根据成绩打印  考核的等级  A  B  C  D;
		Scanner sc = new Scanner(System.in);
		System.out.println("你的java成绩:");
		double score = sc.nextDouble();
		if (score > 100 || score < 0) {
			System.out.println("输入有误!");
		} else {
			//多选一
			if (score >= 90 && score <= 100) {
				System.out.println("A");
			} else if (score >= 80) {
				System.out.println("B");
			} else if (score >= 60) {
				System.out.println("C");
			} else {
				System.out.println("D");
			}
		}
	}
}

课后练习作业:

1.键盘输入三个整数 , 打印出最大的那个数值。

下面展示我自己的一种方法:

import java.util.Scanner;

public class HomeWork {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		int b = sc.nextInt();
		int c = sc.nextInt();
		if (a>=b && a>=c) {
			System.out.println(a);
		}
		else if (b>=c && b>=a) {
			System.out.println(b);
		}
		else if (c>=b && c>=a) {
			System.out.println(c);
		}
	}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值