JAVA题目笔记(二十)异常综合小练

一、键盘录入数据

import java.text.ParseException;
import java.util.InputMismatchException;
import java.util.Scanner;public class Co {public static void main(String[] args) throws ParseException {//键盘录入信息int age=0;String name=null;Scanner sc = new Scanner(System.in);boolean flag = true;while (flag) {try {System.out.println("输入姓名: ");name = sc.nextLine();checkname(name);flag = false;} catch (RuntimeException e) {System.out.println("姓名长度有误");}}System.out.println("姓名符合规则");flag = true;while (flag) {try {System.out.println("输入年龄:");String temp = sc.nextLine();age=Integer.parseInt(temp);checkage(age);flag=false;} catch (InputMismatchException | NumberFormatException e) {System.out.println("输入整数年龄");} catch (NullPointerException e) {System.out.println("年龄大小不合规矩");}}System.out.println("年龄和规矩");System.out.println("姓名为: "+name+",年龄为: "+age);}public static void checkname (String name){if (name.length() > 10 || name.length() < 3)throw new RuntimeException();}public static void checkage ( int age){if (age < 18 || age > 40)throw new NullPointerException();}
}

自定义异常:

public class NameformatException extends RuntimeException{//Nameformat:异常的名字//Exception:表示当前是一个异常类//运行时异常继承 RuntimeException  核心:表示由参数有异常导致的问题//编译时异常继承 Exception   核心:提醒程序员检查本地信息//空参构造+带参构造  alt+insertpublic NameformatException() {}public NameformatException(String message) {super(message);}
}
public class AgeformatExcetion extends RuntimeException{public AgeformatExcetion() {}public AgeformatExcetion(String message) {super(message);}
}
import java.text.ParseException;
import java.util.InputMismatchException;
import java.util.Scanner;public class Co {public static void main(String[] args) throws ParseException {//键盘录入信息int age=0;String name=null;Scanner sc = new Scanner(System.in);boolean flag = true;while (flag) {try {System.out.println("输入姓名: ");name = sc.nextLine();checkname(name);flag = false;} catch (NameformatException e) {System.out.println("姓名长度有误");}}System.out.println("姓名符合规则");flag = true;while (flag) {try {System.out.println("输入年龄:");String temp = sc.nextLine();age=Integer.parseInt(temp);checkage(age);flag=false;} catch (InputMismatchException | NumberFormatException e) {System.out.println("输入整数年龄");} catch (AgeformatExcetion e) {System.out.println("年龄大小不合规矩");}}System.out.println("年龄和规矩");System.out.println("姓名为: "+name+",年龄为: "+age);}public static void checkname (String name){if (name.length() > 10 || name.length() < 3)throw new NameformatException();}public static void checkage ( int age){if (age < 18 || age > 40)throw new AgeformatExcetion();}
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32F10x 定时器

使用定时器实现&#xff1a;B5 E5的开关 添加相关的.h路径文件 添加相关的.c配置文件 led.h文件 用于声明LED函数 #ifndef __LED_H //没有定义__LED_H #define __LED_H //就定义__LED_H #define LED1_ON GPIO_ResetBits(GPIOB,GPIO_Pin_5) #defi…

shell脚本基础学习_总结篇(完结)

细致观看可以&#xff0c;访问shell脚本学习专栏&#xff0c;对应章节会有配图https://blog.csdn.net/2201_75446043/category_12833287.html?spm1001.2014.3001.5482 导语 一、shell脚本简介 1. 定义&#xff1a; 2. 主要特点&#xff1a; 3. shell脚本的基本结构 4. S…

Linux创建免密登陆(错误:Permission denied (publickey,gssapi-keyex,gssapi-with-mic))

报错截图 解决方法 1. mkdir -p ~/.ssh 2. chmod 700 ~/.ssh 3. ssh-keygen&#xff0c;一直回车 4. chmod 600 /root/.ssh/id_rsa 5. 将公钥内容追加到服务器上&#xff0c;cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 6. chmod 600 ~/.ssh/authorized_keys…

低代码平台在医疗/医院行业应用案例与优势介绍

随着医疗行业的不断发展&#xff0c;数字化管理的需求日益迫切。传统的医疗信息化管理系统开发往往面临着成本高、周期长、定制性差等问题。在这个数字化转型的浪潮下&#xff0c;低代码平台应运而生&#xff0c;为医院快速搭建高效、灵活的医疗信息化管理系统提供了全新的解决…

在 Spring Boot 中构造 API 响应的最佳实践

在平时的开发和项目中&#xff0c;我们一定会涉及到接口对接的功能&#xff0c;由于不同开发人员的编码习惯不同&#xff0c;API报文在项目中通常是"百花齐放"的。 不但增加工作难度&#xff0c;往往也是扯皮的大头&#xff0c;如果能统一报文格式&#xff0c;不但能…

多目标优化算法——多目标粒子群优化算法(MOPSO)

Handling Multiple Objectives With Particle Swarm Optimization&#xff08;多目标粒子群优化算法&#xff09; 一、摘要&#xff1a; 本文提出了一种将帕累托优势引入粒子群优化算法的方法&#xff0c;使该算法能够处理具有多个目标函数的问题。与目前其他将粒子群算法扩展…

OpenCV与AI深度学习|16个含源码和数据集的计算机视觉实战项目(建议收藏!)

本文来源公众号“OpenCV与AI深度学习”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;分享&#xff5c;16个含源码和数据集的计算机视觉实战项目 本文将分享16个含源码和数据集的计算机视觉实战项目。具体包括&#xff1a; 1. 人…

Jenkins升级到最新版本后无法启动

1. 场景还原 最近在web界面将jenkins升级到最新版本后&#xff0c;后台无法启动jenkins服务&#xff0c;服务状态如下&#xff1a; 运行jenkins命令提示invalid Java version jenkins --version jenkins: invalid Java version: java version "1.8.0_202" Java(TM)…

【计算机视觉+MATLAB】自动检测并可视化圆形目标:通过 imfindcircles 和 viscircles 函数

引言 自动检测图像中的圆形或圆形对象&#xff0c;并可视化检测到的圆形。 函数详解 imfindcircles imfindcircles是MATLAB中的一个函数&#xff0c;用于在图像中检测并找出圆形区域。 基本语法&#xff1a; [centers, radii] imfindcircles(A, radiusRange) [centers, r…

鸿蒙NEXT元服务:利用App Linking实现无缝跳转与二维码拉起

【效果】 元服务链接格式&#xff08;API>12适用&#xff09;&#xff1a;https://hoas.drcn.agconnect.link/ggMRM 生成二维码后效果&#xff1a; 【参考网址】 使用App Linking实现元服务跳转&#xff1a;文档中心 草料二维码&#xff1a;草料二维码生成器 【引言】 …

下载安装Android Studio

&#xff08;一&#xff09;Android Studio下载地址 https://developer.android.google.cn/studio 滑动到 点击下载文档 打开新网页 切换到english ![](https://i-blog.csdnimg.cn/direct/b7052b434f9d4418b9d56c66cdd59fae.png 等待一会&#xff0c;出现 点同意后&#xff0…

【C/C++】深入解析 Stack 与 Queue 数据结构(详解):实现原理、应用场景与性能优化

文章目录 引言栈&#xff08;Stack&#xff09;数据结构详解1. 栈的基本概念2. 栈的实现原理3. C中的栈实现4. 栈的应用场景5. 栈的性能分析6. 实战示例&#xff1a;括号匹配 队列&#xff08;Queue&#xff09;数据结构详解1. 队列的基本概念2. 队列的实现原理3. C中的队列实现…

【css实现收货地址下边的平行四边形彩色线条】

废话不多说&#xff0c;直接上代码&#xff1a; <div class"address-block" ><!-- 其他内容... --><div class"checked-ar"></div> </div> .address-block{height:120px;position: relative;overflow: hidden;width: 500p…

从零开始配置Qt+VsCode环境

从零开始配置QtVsCode环境 文章目录 从零开始配置QtVsCode环境写在前面扩展安装及配置Qt Configure配置 VsCode创建Qt工程VsCodeQMakeMinGwVsCodeQMakeMsvcVsCodeCMakeMinGwVsCodeCMakeMsvcQtCreatorQMakeMinGw->VsCodeQtCreatorQMakeMsvc->VsCodeQtCreatorCMakeMinGw-&g…

【前端】JavaScript中的字面量概念与应用详解

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: 前端 文章目录 &#x1f4af;前言&#x1f4af;字面量1. 数字字面量2. 字符串字面量3. 布尔字面量4. 空值字面量&#xff08;null&#xff09;5. 对象字面量6. 数组字面量7. 正则表达式字面量8. 特殊值字面量9. 函数字…

Python使用ffmpeg进行本地视频拉流,并使用训练模型识别人脸,并将识别后的模型推流源码

前言&#xff1a; Windows上搭建nginx-rtsp流媒体服务器&#xff0c;实现FFmpeg推流、录像转rtsp推流 - WayWayWayne - 博客园参考上述文章和一些webRTC前端拉流文章 主要是缕一缕思路和每个部分的代码功能&#xff0c;文件命名高度相似导致。 效果&#xff1a; 代码&#x…

【去毛刺】OpenCV图像处理基础:腐蚀与膨胀操作入门

在数字图像处理中&#xff0c;形态学操作是一种常用的技术&#xff0c;用于提取图像中的特定形状或特征。其中&#xff0c;腐蚀&#xff08;Erosion&#xff09;和膨胀&#xff08;Dilation&#xff09;是两种基本的形态学运算。本文将通过一个简单的例子来演示如何使用Python中…

2024年11月27日Github流行趋势

项目名称&#xff1a;screenshot-to-code 项目维护者&#xff1a;abi clean99 sweep-ai kachbit vagusX项目介绍&#xff1a;通过上传截图将其转换为整洁的代码&#xff08;支持HTML/Tailwind/React/Vue&#xff09;。项目star数&#xff1a;62,429项目fork数&#xff1a;7,614…

Linux八股积累与笔记

1、iptables 是一个用于配置Linux内核防火墙规则的工具。四表五链&#xff1a;在iptables中&#xff0c;有四个表&#xff08;tables&#xff09;和五个链&#xff08;chains&#xff09;&#xff0c;用于管理不同类型的数据包过滤规则。如下&#xff1a; 表&#xff08;Tabl…

Qt5.14.2的安装与环境变量及一些依赖库的配置

目录 1.Qt5.14.2安装 2.Qt环境变量及一些依赖库的配置 1.Qt5.14.2安装 QT从入门到入土&#xff08;一&#xff09;——Qt5.14.2安装教程和VS2019环境配置 - 唯有自己强大 - 博客园 2.Qt环境变量及一些依赖库的配置 假设QT安装目录为: D:\Qt\Qt5.14.2 将目录: D:\Qt\Qt5.14.…