Java基础之变量+选择语句总结归纳

目录

1.运算符    

2.类型转换    

3.Scanner 输入器  

4.equals()

5.选择结构if 和 是 switch

随机数


1.运算符
 ①算术运算符:+ - * / % ++  --
 ②赋值运算符:+= -= *= /= %=
            a+=5;   -->  a = a+5;
  ③关系运算符:> < >= <= != ==    结果类型:true或false
  ④逻辑运算符:&&  ||  !
        syso(1==2);//false
        syso(!(1==2));//true

运算符的优先级

最高的优先级:小括号,即( )

最低的优先级:赋值运算符,即=

优先级顺序:!>算术运算符>关系运算符>&&>||

 ⑤三元运算符
        表达式?结果1:结果2

布尔表达式 ? 值0 : 值1

若“布尔表达式”的结果为true,就计算“值0”,而且它的结果成为最终由运算符产生的值。但若“布尔表达式”的结果为false,计算的就是“值1”,而且它的结果成为最终由运算符产生的值。

    注意:
    表达式:①可以是单独的关系运算符的表达式②也可以是关系运算符与逻辑运算符结合的表达式。

2.类型转换
    ①基本类型的范围大小
    byte<short<int<float<double
    byte<short<char<float<double
    ②
    自动类型转换:小---》大
    强制类型转换:大---》小  double b = (数据类型)a
    int a = 10;
    
    double b = a;
3.Scanner 输入器
    ①导包
        import java.util.Scanner
    ②创建输入器
        Scanner sc = new Scanner(System.in);
    ③给出相应的提示语句并获取输入的内容
        System.out.println("请输入成绩");
        double sb = sc.nextDouble();
    ④打印输入输入器输入的数据内容
        System.out.println("内容为: "+sb);

4.equals():比较两个字符串是否相同
  ==:比较两个数字是否相同,也可以比较字符串

 可以进行以下练习:

package com.zking.work;

import java.util.Scanner;

public class Work {

	private static Scanner scanner;

	@SuppressWarnings("resource")
	public static void main(String[] args) {

		// ----[只要看到“输入”二字:用Scanner]----
		// 1、输入你的姓名,性别,及年龄,放入三个不同类型的变量中,
		// 要求格式如下
		// 请输入你的姓名:***
		// 请输入你的性别:*
		// 请输入你的年龄:**
		
		// 姓名    性别     年龄
		// *** *    **
		//提前了解   charAt()  
		//sc.next() 得到的是字符串String
		//charAt(0):获取下标为0的字符    hello   男女
		//char sex = sc.next().charAt(0);
		
		
		//1.创建输入器并且导包   ctrl+1 回车即可
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入你的姓名: ");
//		//调用输入器
//		String name = sc.next();
//		System.out.println("请输入性别");
//		String sex = sc.next();
//		System.out.println("请输入年龄: ");
//		int age = sc.nextInt();
//		System.out.println("姓名\t性别\t年龄");
//		System.out.println(name+"\t"+sex+"\t"+age);
		
		
		// 2、输入两个整数,放入到两个变量a与b中,编程将a与b中的值交换,
		//	并输出a与b的值。
		
		
		//变量与变量之间的交换????
//		int a = 10;//a容器
//		int b = 2;//b容器
//		int c = 0;//C容器  [小三] 空的
//		c = a;//将a容器中的鱼儿放入C容器中   此时a就是空的
//		a = b;//将b容器中的鱼儿放入a容器中,此时a就是满的,b容器空了
//		b = c;//最后,将C容器中的鱼儿[a的鱼儿]放入b容器中
		//程序一运行后,想要用户自己去输入数据,用到Scanner输入器
		
//		Scanner sc  = new Scanner(System.in);
//		System.out.println("请输入第一个整数: ");
//		int a = sc.nextInt();//5
//		System.out.println("请输入第二个整数: ");
//		int b = sc.nextInt();//10
//		System.out.println("交换前a = "+a);
//		System.out.println("交换前b = "+b);
//		//进行交换    小三的类型取决于交换交换变量的类型
//		int temp = a;
//		a = b;
//		b = temp;
//		System.out.println("交换后a = "+a);
//		System.out.println("交换后b = "+b);
		
		// 3、输入一个整数,代表有n个小时,
		//计算n个小时等于多少天零多少个小时。比如输入:25,
		//那么输出“1天零1个小时”[% /]
		//35
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入一个整数: ");
//		int hours = sc.nextInt();//35 12
//		//天
//		int day = hours / 24;//hours里面有多少个24
//		//小时
//		int h = hours % 24;//hours里面有多少个24,还剩余多少。
//		System.out.println(day+"天零"+h+"个小时");
		
		
		
		// 4、输入电视机的价格(double型)及数量(int型),
//		计算这些电视机总价值是多少。
//		price: 价格  		 count:数量统计
		//创建输入器并且导包
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入电视机的价格");
//		double price = sc.nextDouble();
//		System.out.println("请输入数量: ");
//		int count = sc.nextInt();
//		//总价格 = 单价 * 数量
//		double sum = price * count;
//		System.out.println("总价格为: "+sum);
		
		
		// 5、输入一个四位数的整数,要求编程将这个四位数中的个位,
		//	十位,百位,千位分别输出,并求和。
		//1234        以10 为单位求每个数
//		Scanner sc = new Scanner(System.in);
//		int a = sc.nextInt();
//		//1234中有多少个10?  123  剩余4
//		int gw = a % 10;
//		int sw = a / 10 % 10;
//		int bw = a / 100 % 10;
//		int qw = a / 1000;
//		System.out.println("个位: "+gw+"\t十位: "+sw+"\t百位: "+bw+"\t千位: "+qw);
//		int sum = gw+sw+bw+qw;
//		System.out.println("和为: "+sum);
		
		
		// 6、输入一个3位数,分别放入到3个变量中去,
		//编程将这3个变量中的值交换后输出。比如依次输入123三个数
		// 放入到变量a,b,c中去,最后输出a,b,c的值,要求输出321。
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入一个三位数: ");
//		int num= sc.nextInt();//123
//		//求个十百
//		int gw = num % 10;
//		int sw = num / 10 % 10;
//		int bw = num / 100;
//		System.out.println("变换前: "+bw+sw+gw);
//		//找小三   让gw与bw进行互换
//		int temp = 0;
//		temp = gw;
//		gw = bw;
//		bw = temp;
//		System.out.println("变换后: "+bw+sw+gw);
		
		
		
		
		// 7、收银系统:首先输入衣服的价格,买了几件;
		//再输入帽子的价格,以及要买的个数;然后接收客人所付的钱,
		//最后输出找零的钱数。
		/*
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入衣服的价格: ");
		double yfPrice = sc.nextDouble();
		System.out.println("请输入衣服的件数: ");
		int yfCount = sc.nextInt();
		System.out.println("请输入帽子的价格: ");
		double mzPrice = sc.nextDouble();
		System.out.println("请输入帽子的件数: ");
		int mzCount = sc.nextInt();
//		计算总价格  让客户知道
		double sum = yfPrice * yfCount +mzPrice * mzCount;
		System.out.println("商品总价格为: "+sum);
		System.out.println("请输入所付的money: ");
		double money = sc.nextDouble();
		//找零
		double zl = money - sum;
		System.out.println("应找零: "+zl+"元");
		*/
		
		// 8、输入两个整数,判断第一个数是否大于第二个数。
		//如:输入8和7,要求输出“8<7是:false”
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入第一个整数: ");
//		int a = sc.nextInt();//8
//		System.out.println("请输入第二个整数: ");
//		int b = sc.nextInt();//7
//		System.out.println(a + " < " + b + "是: "+ (a<b));
		
		
		// 9、输入一个整数,输出这个整数与1到5相乘的结果,
		// 要求格式如下:
		// 请输入一个整数:X
		// 1*X=结果
		// 2*X=结果
		// ……
		// 5*X=结果
		// 例如:用户输入数字5
		// 1*5=5
		// 2*5=10
		// 3*5=15
		// 4*5=20
		// 5*5=25
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入一个整数X: ");
//		int x = sc.nextInt();//5
//		System.out.println(1 + " * " + x + " = "+(1*x));
//		System.out.println(2 + " * " + x + " = "+(2*x));
//		System.out.println(3 + " * " + x + " = "+(3*x));
//		System.out.println(4 + " * " + x + " = "+(4*x));
//		System.out.println(5 + " * " + x + " = "+(5*x));
		
		
		
	
		// 1、根据天数(32)计算周数和剩余的天数[% /]
//		int day = 32;
//		//1个星期7天
//		int week = day / 7;
//		//天数
//		int sd = day % 7;
//		System.out.println(day+"天有"+week+"个星期,还剩余: "+sd+"天");
		
	
		// 2、由用户输入圆的半径,求出圆的面积【3.14*r*r】
//		System.out.println(Math.PI);//求圆周率
//		System.out.println(	Math.pow(2, 10));//求幂
		//系统中有一个变量可以直接获取圆周率  3.1415926
		//3.141592653589793
		
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入圆的半径: ");
//		double bj = sc.nextDouble();
//		double area = Math.PI * bj * bj;
//		System.out.println("面积为: "+area);
		
		
		
		// 键盘输入两个double类型的数据,将其转变为int;
		// 求出两个数字的最大值并输出
		//1.输入2个double类型的数据
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入第一个double类型的数据: ");
//		double a = sc.nextDouble();
//		System.out.println("请输入第二个double类型的数据: ");
//		double b = sc.nextDouble();
//		//2.将输入的2个double类型的数据转成int类型的数据
//		int sa = (int)a;
//		int sb = (int) b;
//		//3.利用三元运算符求出sa大还是sb大
//		int max = sa > sb ? sa : sb;
//		System.out.println("最大值为: "+max);
		
		
	}

}
5.选择结构if 和 是 switch

    if语句的简单结构
        /*
         * 语法:
         *     if(表达式){
         *         代码块
         *     }
         *     ①表达式:有关系运算符组成或者由关系运算符和逻辑运算符组合成的一个表达式
         *             结果只有2种情况   true或者false  boolean类型
         *     ②执行流程:
         *         先执行表达式的结果。
         *         根据表达式的结果计算,如果为true就执行后面{}中的代码块
         *         如果为false  什么都不做。
         *     
         *     注意:
         *         当表达式成立 执行{}中的代码块。
         *         如果代码块只有一行时,{}可省略
         * 
         */

列如下面书写方式:

//输入一个数字,判断该数字是不是偶数?
		//当表达式中出现多个条件时  使用逻辑运算符进行拼接
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个数字: ");
		int num = sc.nextInt();
		if(num % 2 == 0 && num != 0) {
			System.out.println("就是偶数");
		}


//输入一个年份,判断是否是闰年
		//求闰年的标准:4年一润,100年不润。400年一润
		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("OK  就是闰年");
		}

SWItch选择语句格式: 

 switch (选择变量) {   

 case 值1:            …            break;  

 case 值2:        …           break;   

 case 值3:           …           break;   

    ...        ...

   default :        … }

假设考查课程的成绩按优秀、良好、中等、及格和不及格分为五等,
分别用4、3、2、1、0来表示,但实际的考卷为百分制,
分别对应的分数为90-100、80-90、60-80、60分以下。 


下面的程序将考卷成绩x转换为考查课成绩y。
代码如下:
int x = int(x/10);
switch(x)
{
case 10:
 y=4;
break;
case 9:
y=4;
break;
case 8: 
y=3;
break;
case 7: 
y=2;
break;
case 6: 
y=1;
break;
default:
y=0;
} 

switch…case 的其他特性

各个 case 标签不必连续,也不必按特定顺序排列 default 标签可位于 switch…case 结构中的任意位置 default 标签不是必选的,但使用 default 标签是一个良好的编程习惯 每两个 case 标签之间的语句数不限

随机数

Random rm = new Random();

int n = rm.nextInt(3);   / /产生一个随机数

【注意】 使用Random就一定要调用包      import java.util.Random;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值