Java基础知识(三)

一、在键盘上输入数据:

1、为了方便灵活的使用参与运算的操作数,java提供了一个工具给我们使用,让我们可以手动输入一些数据。

Scanner(目前来说,只需要掌握如何使用格式即可)

具体操作;

导包;

import java.util.Scanner;

创建键盘录入对象;

Scanner sc =new Scanner(System.in);

调用方法获取键盘录入的数据(有返回值的)

sc.nextInt()//从键盘上获取一个int类型的数据;

sc.next()//从键盘上获取一个字符串;

举例:

import java.util.Scanner;
public class Scanner1{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out,println("请输入一个数字:");
int number=sc.nextInt();
System.out.println(number);
}
}

2、键盘录入两个数据,并对这两个数据求和,输出其结果

分析:
    1、导包
    2、创建键盘录入对象
    3、调用两次方法获取键盘录入的数据,用两个变量接收
    4、将两个变量相加,就是我们要的结果

    三目运算符
        格式:(关系表达式)?表达式1:表达式2;
import java.util.Scanner;
public class ScannerText1{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
Systelm.out.println("请输入第一个数据:");
int number1=sc.nextInt();
System.out.println("请输入第二个数据:");
int number2=sc.nextInt();
System.out.println("两个数据之和为:"+(number1+number2));
int i=(number1>number2)?number1:number2;
System,out,println("两个数据中的最大为:"+i);
}
}

3、键盘录入三个数据,获取这三个数据中的最大值

分析:
    1、导包
    2、创建键盘录入对象
    3、调用方法获取三次数据
    4、使用两次三目运算符
import java.util.Scanner;
public class ScannerTest2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个数据:");
int number1 = sc.nextInt();
System.out.println("请输入第二个数据:");
int number2 = sc.nextInt();
System.out.println("请输入第三个数据:");
int number3 = sc.nextInt(); //使用第一次三目运算符,获取任意两个数中最大值
int res1 = (number1 > number2) ? number1 : number2; //使用第二次三目运算符再次比较,获取三个数中的最大值
int res2 = (res1 > number3) ? res1 : number3;
System.out.println("三个数中最大值为:" + res2);
}
}

4、键盘录入两个数据,比较这两个数据是否相等

分析:
    1、导包
    2、创建键盘录入对象
    3、调用方法获取两次数据
    4、三目运算符
import java.util.Scanner;
public class ScannerTest3 {
public static void main(String[] args) {
//创建键盘录入对象
Scanner sc = new Scanner(System.in);
//调用方法获取两次数据
System.out.println("请输入第一个数据:");
int number1 = sc.nextInt();
System.out.println("请输入第二个数据:");
int number2 = sc.nextInt();
boolean result = (number1==number2)?true:false;
System.out.println(result);
} 
}

二、Switch语句

1、语句格式

switch(表达式){

case 常量值1: 语句体1; break;

case 常量值2:语句体2; break;

case 常量值3: 语句体3; break;

case 常量值4:语句体4; break;

...

default: 语句体n+1; break;

}

2、名字解释:

(1)、switch:表示这一个选择结构语句

(2)、表达式: 这里的表达式一定会有一个结果值,但是这里结果数据类型只能是byte,short,int,char,JDK1.5之后可以是枚举,JDK1.7之后可以是String

(3)、case: switch中匹配的使用关键字

(4)、常量值: 要被匹配的值,注意:这里只能是常量值,不能是变量!!!

(5)、语句体: 当匹配到对应的常量值后,执行对应的语句体内容,语句体可以是一条也可以是多条。

(6)、break: 跳出(结束)switch选择结构。

(7)、default: 当所有的case都不匹配表达式中的值的是,默认最后执行default中语句体。

3、执行流程:

(1)、首先会计算表达式中的值

(2)、依次去匹配case中的常量值

(3)、当匹配到的时候,执行对应的语句体内容

(4)、如果所有的case都不匹配,最后再执行default中的语句体。

(5)、遇到break或者执行完代码结束switch选择。

4、根据键盘录入的数值1,2,3,…7输出对应的星期一,星期二,星期三…星期日。

注释的快捷键:ctrl+/
注意事项:
    1、break可以不写吗?可以,但是会发生”穿透“
    2、default可以不写吗?可以,但是不建议,代码不够严谨,什么情况下可以不写,当只有固定的几个值的时候,可以不写
    3、default可以写在最前面吗?如果可以,会发生什么情况?
        可以。
        (1)default的执行顺序与它在switch中的位置无关。
        (2)当default的顺序与break省略同时出现的时候,出来的结果可能不是你想要的。
    4、多个case后面的常量值,不能一样
代码如下:
import java.util.Scanner;
public class SwitchDemo2 {
    public static void main(String[] args) {
        //创建键盘录入对象
        Scanner sc = new Scanner(System.in);

        System.out.println("请输入一个数据(1-7)");
        int number = sc.nextInt();
        switch (number){
            default:
                System.out.println("输入的数据有误");
//                break;
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期日");
                break;
        }


    }
}

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值