_note_03

1.说说switch支持的数据类型有哪些?

在Java中,switch语句支持以下几种基本数据类型:

  1. byte
  2. short
  3. char
  4. int
  5. String (Java 7或更高版本)

需要注意的是,switch语句不支持以下数据类型:

  1. long
  2. float
  3. double
  4. boolean
  5. 任何对象类型(除了String,因为它是非基本类型的特例)

对于在switch语句中使用字符串时,请使用Java 7之后的版本,因为在Java 7之前的版本中,switch语句只支持使用整数类型作为条件表达式。在Java 7及以后的版本中,switch语句允许使用String作为条件表达式,这方面带来了更大的灵活性。但是需要注意,switch语句中的字符串匹配是区分大小写的。

此外,需要注意每个case标签中的值必须是常量或字面量,不能是变量或表达式。

2.编程题练习:任意输入一个数,如果是偶数的话就输出(if)

import java.util.Scanner;

/**
 *
 * 任意输入一个数,如果是偶数的话就输出(if)
 */
public class _2 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入一个数字: ");
        int num = scanner.nextInt();

        if (num % 2 == 0) {
            System.out.println("这是一个偶数");
        }
    }
}

3.编程题练习:判断一个任意输入的数是奇数还是偶数(ifelse)

import java.util.Scanner;

/**
 *
 * 判断一个任意输入的数是奇数还是偶数(ifelse)
 */
public class _3 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入一个数字: ");
        int num = scanner.nextInt();

        if (num % 2 == 0) {
            System.out.println("这是一个偶数");
        } else {
            System.out.println("这是一个奇数");
        }
    }
}

4.编程题练习:任意输入一个成绩,判断这个成绩属于哪个等级。

等级要求:[90-100 A,[80-90 B,[70-80 C,[60-70 D,60以下就是挨巴掌

import java.util.Scanner;

/**
 *
 * 任意输入一个成绩,判断这个成绩属于哪个等级
 */
public class _4 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入成绩: ");
        double score = scanner.nextDouble();

        if (score >= 90) {
            System.out.println("A");
        } else if (score >= 80) {
            System.out.println("B");
        } else if (score >= 70) {
            System.out.println("C");
        } else if (score >= 60) {
            System.out.println("D");
        } else {
            System.out.println("不及格");
        }
    }
}

5.编程题练习:任意输入一个年,和一个月,判断这年这月有多少天(使用if)

import java.util.Scanner;

/**
 *
 * 任意输入一个年,和一个月,判断这年这月有多少天(使用if)
 */
public class _5 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入年份: ");
        int year = scanner.nextInt();

        System.out.print("请输入月份: ");
        int month = scanner.nextInt();

        int days = 0;

        if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
            days = 31;
        } else if (month == 4 || month == 6 || month == 9 || month == 11) {
            days = 30;
        } else if (month == 2) {
            if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
                days = 29;
            } else {
                days = 28;
            }
        } else {
            System.out.println("无效的月份");
            return;
        }

        System.out.println(year + "年" + month + "月有" + days + "天");
    }
}

6.编程题练习:任意输入一个年,和一个月,判断这年这月有多少天(使用switch)

import java.util.Scanner;

/**
 *
 * 任意输入一个年,和一个月,判断这年这月有多少天(使用switch)
 */
public class _6 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入年份: ");
        int year = scanner.nextInt();

        System.out.print("请输入月份: ");
        int month = scanner.nextInt();

        int days;

        switch (month) {

            /*
            如果case: ;break;
            没有添加break用于打断该指令,则
             */
            case 1: // 1月
            case 3: // 3月
            case 5: // 5月
            case 7: // 7月
            case 8: // 8月
            case 10: // 10月
            case 12: // 12月
                days = 31;
                break;

            case 4: // 4月
            case 6: // 6月
            case 9: // 9月
            case 11: // 11月
                days = 30;
                break;

            case 2: // 2月
                if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
                    days = 29;
                } else {
                    days = 28;
                }
                break;

            default:
                System.out.println("无效的月份");
                return;
        }

        System.out.println(year + "年" + month + "月有" + days + "天");
    }
}

7.猜拳游戏 0—石头 1—剪刀 2—布,玩家通过键盘输入一个0–2的数表示玩家出拳,
电脑通过系统随机生成一个0–2的数表示电脑出拳
思考:计算出玩家赢还是计算机赢,并提示,(处理玩家的错误输入)

import java.util.Scanner;

/**
 *
 * 猜拳游戏 0---石头  1---剪刀  2---布,玩家通过键盘输入一个0--2的数表示玩家出拳,
 * 电脑通过系统随机生成一个0--2的数表示电脑出拳
 * 思考:计算出玩家赢还是计算机赢,并提示,(处理玩家的错误输入)
 */
public class _7 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("猜拳游戏开始!");
        System.out.println("请玩家输入猜拳的数字:0(石头),1(剪刀),2(布)");

        System.out.print("玩家出拳:");
        int playerChoice = scanner.nextInt();

        if (playerChoice < 0 || playerChoice > 2) {
            System.out.println("输入无效,请输入0-2之间的数字!");
            return;
        }

        // [0,2]
        int computerChoice = (int) (Math.random() * ( 2 + 1 - 0 ) + 0 ); // 生成0-2的随机数表示电脑出拳

        System.out.println("电脑出拳:" + computerChoice);

        // 判断胜负
        if (playerChoice == computerChoice) {
            System.out.println("平局!");
        } else if ((playerChoice == 0 && computerChoice == 1) ||
                (playerChoice == 1 && computerChoice == 2) ||
                (playerChoice == 2 && computerChoice == 0)) {
            System.out.println("玩家赢!");
        } else {
            System.out.println("电脑赢!");
        }
    }
}

8.按要求书写学生管理系统的功能,要求如下

首先进入主界面

如果输入1进入登录页面,在登录页面输入用户名和密码,如果用户名输入111密码输入222则显示登录成功,否则就显示登录失败

如果输入2则进入注册页面,在注册页面输入用户名和密码,如果用户名输入111则提示用户已经存在

否则就显示注册成功,三个页面分别如下:

主界面如下

欢迎进入学生管理系统登录请输入输入1注册请输入输入2****

登录界面如下

********登录页面*************请输入数字用户名:请输入数字密码:登录成功[登陆失败]

注册界面如下

注册页面请输入数字用户名:请输入数字密码:用户名已存在[注册成功]

import java.util.Scanner;

public class _8 {

    private static Scanner scanner = new Scanner(System.in);
    private static String username;
    private static String password;

    public static void main(String[] args) {
        int option;
        boolean exit = false;

        while (!exit) {
            displayMainMenu();
            option = scanner.nextInt();

            switch (option) {
                case 1:
                    login();
                    break;
                case 2:
                    register();
                    break;
                default:
                    System.out.println("无效的选项,请重新输入!");
            }

            System.out.println("\n");
        }
    }

    private static void displayMainMenu() {
        System.out.println("***********欢迎进入学生管理系统***************");
        System.out.println("*************登录请输入输入1****************");
        System.out.println("************注册请输入输入2*****************");
        System.out.print("请输入选项:");
    }

    private static void login() {
        System.out.println("**********登录页面*************");
        System.out.print("请输入用户名:");
        username = scanner.next();
        System.out.print("请输入密码:");
        password = scanner.next();

        if (username.equals("111") && password.equals("222")) {
            System.out.println("登录成功!");
        } else {
            System.out.println("登录失败!");
        }
    }

    private static void register() {
        System.out.println("**********注册页面*************");
        System.out.print("请输入用户名:");
        username = scanner.next();

        if (username.equals("111")) {
            System.out.println("用户名已存在!");
        } else {
            System.out.print("请输入密码:");
            password = scanner.next();
            System.out.println("注册成功!");
        }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/447998.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

智能测径仪在胶管行业的应用

关键字&#xff1a;胶管外径尺寸测量&#xff0c;胶管检测仪器&#xff0c;胶管外径检测&#xff0c;高温胶管外径检测&#xff0c;软硬胶管检测&#xff0c; 智能测径仪在家胶管行业中的应用主要体现在对胶管外径的精确测量和控制上。在胶管生产过程中&#xff0c;外径的大小直…

高级语言讲义2023软专(仅高级语言部分)

1.辗转相除求最大公约数过程如下: U/V...余 V/...余 /...余 当为0时&#xff0c;即为U、V最大公约数&#xff0c;编写函数int g< d(intU,intV)求最大公约数。 #include <stdio.h>int gcd(int a,int b) {if(b0)return a;elsereturn gcd(b,a%b); }int gcd2(int a,i…

python推导式

python推导式是一种简洁且强大的内建语法结构&#xff0c;它允许我们以一种极其紧凑和易于理解的方式创建新的列表、字典、集合或生成器对象&#xff0c;能够更高效地操作和转换数据结构。 列表推导式基本语法如下图&#xff1a; 其他推导式的语法也基本相似&#xff0c;看着有…

最迟但到的 Star History 2023 年度开源精选!

千呼万唤始出来&#xff0c;Star History 2023 年终开源精选来啦&#xff01;&#x1f389; AI 是 2023 开源领域里最主要的关键词&#xff0c;但其实过去一年还是有很多其他值得关注的项目和发展趋势的&#xff01;Star History 小编总结了几个类别并精选了类别中最亮眼的项目…

ElasticSearchLinux安装和springboot整合的记录和遇到的问题

前面整合遇到的一些问题有的记录在下面了&#xff0c;有的当时忘了记录下来&#xff0c;希望下面的能帮到你们 1&#xff1a;Linux安装ES 下载安装&#xff1a; 参考文章&#xff1a;连接1 连接2 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch…

校园小情书微信小程序源码 | 社区小程序前后端开源 | 校园表白墙交友小程序

项目描述&#xff1a; 校园小情书微信小程序源码 | 社区小程序前后端开源 | 校园表白墙交友小程序 功能介绍&#xff1a; 表白墙 卖舍友 步数旅行 步数排行榜 情侣脸 漫画脸 个人主页 私信 站内消息 今日话题 评论点赞收藏 服务器环境要求&#xff1a;PHP7.0 MySQL5.7 效果…

【三十】springboot项目上高并发解决示例

互相交流入口地址 整体目录&#xff1a; 【一】springboot整合swagger 【二】springboot整合自定义swagger 【三】springboot整合token 【四】springboot整合mybatis-plus 【五】springboot整合mybatis-plus 【六】springboot整合redis 【七】springboot整合AOP实现日志操作 【…

c++ primer plus 笔记 第十六章 string类和标准模板库

string类 string自动调整大小的功能&#xff1a; string字符串是怎么占用内存空间的&#xff1f; 前景&#xff1a; 如果只给string字符串分配string字符串大小的空间&#xff0c;当一个string字符串附加到另一个string字符串上&#xff0c;这个string字符串是以占用…

并发容器介绍(二)

并发容器介绍&#xff08;二&#xff09; 文章目录 并发容器介绍&#xff08;二&#xff09;BlockingQueueBlockingQueue 简介ArrayBlockingQueueLinkedBlockingQueuePriorityBlockingQueue ConcurrentSkipListMap 文章来自Java Guide 用于学习如有侵权&#xff0c;立即删除 Bl…

大模型字典中加入特殊字符

大模型字典中加入特殊字符 在微调大模型的时候会遇到添加特殊字符&#xff0c;例如在微调多轮的数据的时候需要加入人和机器等特殊标识字符&#xff0c;如用这个特殊字符表示人&#xff0c;用这个特殊字符表示机器&#xff0c;从而实现了人机对话。一般在大模型中base字典中不…

二次供水无人值守解决方案

二次供水无人值守解决方案 二次供水系统存在一定的管理难题和技术瓶颈&#xff0c;如设备老化、维护不及时导致的水质安全隐患&#xff0c;以及如何实现高效运行和智能化管理等问题。在一些地区&#xff0c;特别是老旧小区或农村地区&#xff0c;二次供水设施建设和改造滞后&a…

【go语言开发】redis简单使用

本文主要介绍redis安装和使用。首先安装redis依赖库&#xff0c;这里是v8版本&#xff1b;然后连接redis&#xff0c;完成基本配置&#xff1b;最后测试封装的工具类 文章目录 安装redis依赖库连接redis和配置工具类封装代码测试 欢迎大家访问个人博客网址&#xff1a;https://…

初学Vue——Vue路由

0 什么是Vue路由 类似于Html中的超链接(<a>)一样&#xff0c;可以跳转页面的一种方式。 前端路由&#xff1a;URL中hash(#号之后的内容)与组件之间的对应关系&#xff0c;如下图&#xff1a; 当我们点击左侧导航栏时&#xff0c;浏览器的地址栏会发生变化&#xff0c;路…

hutool,真香!

大家好&#xff0c;我是苏三&#xff0c;又跟大家见面了。 前言 今天给大家介绍一个能够帮助大家提升开发效率的开源工具包&#xff1a;hutool。 Hutool是一个小而全的Java工具类库&#xff0c;通过静态方法封装&#xff0c;降低相关API的学习成本&#xff0c;提高工作效率&…

IOT的发展历程及其优势——青创智通

工业互联网-物联网-设备改造-IOT-青创智通 ​随着科技的不断发展&#xff0c;物联网&#xff08;IoT&#xff09;已经逐渐成为了我们生活中不可或缺的一部分。IoT是指通过互联网将各种物理设备连接起来&#xff0c;实现设备之间的数据交换和智能化控制。IoT的发展不仅改变了我们…

四管齐下 共建发展 | 七巧低代码助力零售行业打造一体化协同解决方案

行业背景 随着互联网和移动技术的普及&#xff0c;零售行业的销售渠道日趋多元化和融合化&#xff0c;传统线下渠道和新兴线上渠道相互竞争和协作&#xff0c;形成了新零售和全渠道的格局。快消品新零售模式下&#xff0c;企业需要通过数字化和智能化的手段&#xff0c;实现对…

Flask python 开发篇:项目布局

一、背景简介 Flask应用程序可以像单个文件一样简单。就像上一篇简单实现一个接口一样&#xff0c;所有的东西都在一个python文件内&#xff1b; 然而&#xff0c;当项目越来越大的时候&#xff0c;把所有代码放在单个文件中就有点不堪重负了。 Python 项目使用 包 来管理代码…

携手亚信安慧AntDB,在数智化浪潮中乘风破浪

随着大数据时代的到来&#xff0c;对数据库的需求愈发强烈。在这一背景下&#xff0c;国产数据库逐渐崭露头角&#xff0c;亚信安慧AntDB作为重要的代表产品之一正积极参与到激烈的市场竞争中。亚信安慧AntDB不仅追求技术的革新和突破&#xff0c;同时也致力于满足用户日益增长…

【Python】conda 命令报错解决:Example: conda --no-plugins install <package>

目录 报错效果&#xff1a;解决方法总结 欢迎关注 『Python』 系列&#xff0c;持续更新中 欢迎关注 『Python』 系列&#xff0c;持续更新中 报错效果&#xff1a; An unexpected error has occurred. Conda has prepared the above report. If you suspect this error is bei…

OD_2024_C卷_200分_9、园区参观路径【JAVA】【动态规划】

package odjava;import java.util.Scanner;public class 九_园区参观路径 {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt(); // 长 -> 行数int m sc.nextInt(); // 宽 -> 列数int[][] matrix new int[n][m]; // 地图…
最新文章