day4-小白学习JAVA---开发软件_Scanner键盘录入_Random随机数_流程控制语句

开发软件_Scanner键盘录入_Random随机数_流程控制语句

  • 一、开发软件idea(MAC版)
    • 1、软件安装-安装社区版
    • 2、中英文设置
    • 3、保存时格式化配置
    • 4、注释和代码对不齐
    • 5、idea快捷键
  • 二、键盘录入--Scanner
    • 1、next和nextInt
    • 2、next和nextLine区别
  • 三、Random随机数
    • 1、使用
    • 2、随机范围
  • 四、流程控制语句
    • 1、switch语句
      • 1、基本使用
      • 2、case穿透性
      • 3、执行语句重复时
    • 2、if语句
      • 1、if格式
      • 2、if else格式
      • 3、if else if else格式
    • 3、for循环语句
      • 练习1
      • 练习2
      • 练习3
    • 4、while循环语句
    • 5、do....while循环语句
    • 6、循环控制关键字
    • 7、死循环
    • 8、嵌套循环
      • 练习1
    • 综合练习

一、开发软件idea(MAC版)

1、软件安装-安装社区版

idea社区版(免费)
在这里插入图片描述

2、中英文设置

在这里插入图片描述
在这里插入图片描述

3、保存时格式化配置

在这里插入图片描述

4、注释和代码对不齐

在这里插入图片描述

解决方法

设置-Editor-Code Style- Java-Code Generation

设置-Editor-Code Style- XML-Code Generation

在这里插入图片描述
在这里插入图片描述

5、idea快捷键

快捷键功能
Alt+Enter导入包,自动修正代码(重中之重)
Ctrl+Y删除光标所在行
Ctrl+D复制光标所在行的内容,插入光标位置下面
Ctrl+Alt+L格式化代码
Ctrl+/单行注释
Ctrl+Shift+/选中代码注释,多行注释,再按取消注释
Alt+Shift+上下箭头移动当前代码行

二、键盘录入–Scanner

1、概述:是java定义好的一个类
2、作用:将数据通过键盘录入的形式放到代码中参与运行
3、位置:java.util

1、next和nextInt

变量名.nextInt() 输入整数int型的
变量名.next() 输入字符串 String型的

 public static void main(String[] args) {// 创建对象Scanner sc = new Scanner(System.in);// 整数intint detal = sc.nextInt();System.out.println("detal = " + detal);//        字符串String data2 = sc.next();System.out.println("data2 = " + data2);}
}

2、next和nextLine区别

变量名.next():录入字符串 -> 遇到空格和回车就结束录入了
变量名.nextLine():录入字符串 -> 遇到回车就结束录入了public class Demo03Scanner {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String data =  sc.next();System.out.println("data = " + data);String data1 = sc.nextLine();System.out.println("data1 = " + data1);}
}

在这里插入图片描述

三、Random随机数

1、使用

1、创建对象​	Random 变量名 = new Random()2、调用方法,生成随机数​	变量名.nextInt().  ---->int的取值范围内随机一个整数public class Demo01 {public static void main(String[] args) {//    创建对象Random rd = new Random();int data = rd.nextInt();System.out.println("data = " + data);}
}

2、随机范围

public class Demo01 {public static void main(String[] args) {//    创建对象Random rd = new Random();/**指定随机数nextInt(int bound)  0-(bound-1)a.nextInt(10) -> 0-9b.在1-10之间随机一个数: nextInt(10)+1 -> (0-9)+1 -> 1-10c.在1-100之间随机一个数:nextInt(100)+1 -> (0-99)+1 -> 1-100d.在100-999之间随机一个数: nextInt(900)+100 -> (0-899)+100 -> 100-999*/ int data = rd.nextInt(10)+1;System.out.println("data = " + data);}
}

四、流程控制语句

1、switch语句

1、基本使用

switch能匹配的数据类型: byte short int char 枚举类型 String类型格式: switch(变量){case 常量值1:执行语句1;break;case 常量值2:执行语句2;break;case 常量值3:执行语句3;break;case 常量值4:执行语句4;break;...default:执行语句n;break;}
public class Demo01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个整数");int data = sc.nextInt();switch (data) {case 1:System.out.println("学习Java第一天");break;case 2:System.out.println("学习Java第二天");break;case 3:System.out.println("学习Java第三天");break;case 4:System.out.println("学习Java第四天");break;default:System.out.println("学习Java第N天");break;}}
}

在这里插入图片描述

2、case穿透性

如果没有break,就会出现case的穿透性,程序就一直往下穿透执行,直到遇到了break或者switch代码执行完毕了,就停止了public class Demo01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个整数");int data = sc.nextInt();switch (data) {case 1:System.out.println("学习Java第一天");case 2:System.out.println("学习Java第二天");case 3:System.out.println("学习Java第三天");case 4:System.out.println("学习Java第四天");break;default:System.out.println("学习Java第N天");break;}}
}

在这里插入图片描述

3、执行语句重复时

public class Demo02 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个整数");int month = sc.nextInt();switch(month){case 12:case 1:case 2:System.out.println("冬季");break;case 3:case 4:case 5:System.out.println("春季");break;case 6:case 7:case 8:System.out.println("夏季");break;case 9:case 10:case 11:System.out.println("秋季");break;default:System.out.println("什么情况,你家有这个月份?");}}
}

2、if语句

1、if格式

if(boolean表达式){执行语句;
}public class Demo01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int data1 = sc.nextInt();int data2 = sc.nextInt();if(data1==data2){System.out.println("两个数相等");}}
}

2、if else格式

public class Demo02 {public static void main(String[] args) {//    任意给出一个整数,请用程序实现盘算该整数是奇数还是偶数,并在控制台输出该整数是奇数还是偶数Scanner sc = new Scanner(System.in);int data = sc.nextInt();if(data/2==0){System.out.println("这个整数是偶数 " + data);}else{System.out.println("这个整数是奇数 " + data);}}
}

3、if else if else格式

if(boolean表达式){执行语句1}else if(boolean表达式){执行语句2}else if(boolean表达式){执行语句3}...else{执行语句n}public class Demo08ElseIf {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int data1 = sc.nextInt();int data2 = sc.nextInt();if (data1>data2){System.out.println("data1大于data2");}else if(data1<data2){System.out.println("data1小于data2");}else (data1==data2){System.out.println("data1等于data2");}}
}

3、for循环语句

1.格式:for(初始化变量;比较;步进表达式){循环语句 -> 哪段代码循环执行,就将哪段代码放到此处}2.执行流程:a.先走初始化变量b.比较,如果是true,走循环语句,走步进表达式(初始化的变量的值进行变化) c.再比较,如果还是true,继续走循环语句,走步进表达式d.再比较,直到比较为false,循环结束了
public class Demo01 {public static void main(String[] args) {for (int i = 0; i < 7; i++) {System.out.println("今天是学习Java的第"+i+"天");}}
}

在这里插入图片描述

练习1

// 求1-3之间的数据和,并把求和结果输出public class Demo02 {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 3; i++) {sum+=i;}System.out.println("sum = " + sum);}
}

练习2

  // 求出1-100的偶数和public class Demo02 {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if(i%2==0){sum+=i;}}System.out.println("sum = " + sum);}
}

练习3

//统计1-100之间的偶数个数public class Demo02 {public static void main(String[] args) {int sum = 0;for (int i = 0; i < 100; i++) {if(i%2==0){sum+=1;}}System.out.println("num = " + sum);}
}

4、while循环语句

while(比较){循环语句;步进表达式}public class Demo01 {public static void main(String[] args) {int i = 0;while (i<5){System.out.println("今天学习Java");i++;}}
}
练习:世界最高山峰是珠穆朗玛峰(8844.43=8844430毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度?public class Demo01 {public static void main(String[] args) {//    1、定义一个变量表示山峰。mountionint mountion = 8844430;//    2、定义一个变量表示纸的厚度  paperdouble papaer = 0.1;//    3、定义一个变量表示折纸的次数。countint count = 0;//    利用while循环比较,如果paper<mountion,就循环对折while(papaer<mountion){papaer*=2;count++;}System.out.println("count = " + count);}
}

5、do…while循环语句

1.格式:初始化变量;do{循环语句;步进表达式}while(比较);2.执行流程:a.初始化变量b.走循环语句c.走步进表达式d.判断,如果是true,继续循环,直到比较为false,循环结束3.特点:至少循环一次
public class Demo01DoWhile {public static void main(String[] args) {int i = 0;do{System.out.println("我爱java");i++;}while(i<5);}
}

6、循环控制关键字

1.break:a.switch中代表结束switch语句b.在循环中代表结束循环 2.continue:结束当前本次循环,直接进入下一次循环,直到条件为false为止
public class Demo03Scanner {public static void main(String[] args) {for (int i = 0; i < 5; i++) {if (i == 3) {//结束循环//break;//    结束本次循环continue;}System.out.println("今天是学习Java的第" + i + "天");}}
}

在这里插入图片描述
在这里插入图片描述

7、死循环

比较条件一直为true

8、嵌套循环

1.概述:循环中还有循环
2.执行流程:
先执行外层循环,再进入内层循环,内层循环就一直循环,直到内层循环结束,外层循环进入下一次循环,直到外层循环都结束了,整体结束

练习1

// 打印直角三角形public class Demo03Scanner {public static void main(String[] args) {for (int j = 1; j < 5; j++) {for (int i = 0; i < j; i++) {System.out.print("* ");}System.out.println();}}
}* 
* * 
* * * 
* * * * 

综合练习

1.创建ScannerRandom对象
2.调用Random中的nextInt(100)+11-100之间随机一个数  rdNumber
3.调用Scanner中的nextInt()方法 键盘录入一个要猜的数   scNumber
4.如果scNumber大于rdNumber,证明猜大了
5.如果scNumber小于rdNumber,证明猜小了
6.如果scNumber等于rdNumber,证明猜中了
public class Demo01Exam {public static void main(String[] args) {//1.创建Scanner和Random对象Scanner sc = new Scanner(System.in);Random rd = new Random();//2.调用Random中的nextInt(100)+1在1-100之间随机一个数  rdNumberint rdNumber = rd.nextInt(100) + 1;while(true){//3.调用Scanner中的nextInt()方法 键盘录入一个要猜的数   scNumberSystem.out.println("请您猜一个数:");int scNumber = sc.nextInt();//4.如果scNumber大于rdNumber,证明猜大了if (scNumber>rdNumber){System.out.println("对不起,您猜大了!");}else if (scNumber<rdNumber){//5.如果scNumber小于rdNumber,证明猜小了System.out.println("对不起,您猜小了!");}else{//6.如果scNumber等于rdNumber,证明猜中了System.out.println("恭喜您,猜中了!");break;}}}
}

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

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

相关文章

MySQL基本查询与数据操作全面解析

目录 1. CRUD操作概述 2. Create操作详解 2.1 表的创建 2.2 单行数据插入 2.3 多行数据插入 2.4 插入冲突处理 3. Retrieve操作详解 3.1 基础查询 全列查询&#xff08;慎用&#xff09; 指定列查询 表达式查询 结果去重 3.2 条件查询&#xff08;WHERE子句&#…

01.Python代码Pandas是什么?pandas的简介

01.Python代码Pandas是什么&#xff1f;pandas的简介 提示&#xff1a;帮帮志会陆续更新非常多的IT技术知识&#xff0c;希望分享的内容对您有用。本章分享的是pandas的使用语法。前后每一小节的内容是存在的有&#xff1a;学习and理解的关联性&#xff0c;希望对您有用~ pyth…

(8)ECMAScript语法详解

本系列教程目录&#xff1a;Vue3Element Plus全套学习笔记-目录大纲 文章目录 第2章 ECMAScript2.1 ECMAScript 的发展历史2.2 什么是ES62.3 ES6语法新特性2.3.1 变量声明let2.3.2 常量声明2.3.3 模板字符串2.3.4 函数默认参数2.3.5 箭头函数2.3.6 对象初始化简写2.3.7 解构2.3…

Android JNI开发中头文件引入的常见问题与解决方案​,提示:file not found

Android JNI开发中头文件引入的常见问题与解决方案 问题场景&#xff08;新手易犯错误&#xff09; 假设你在开发一个JNI项目&#xff0c;想要实现一个线程安全的队列&#xff08;SafeQueue&#xff09;&#xff0c;于是直接在cpp目录下创建了safe_queue.h文件&#xff0c;并开…

C++静态与动态联编区别解析

在 C++ 中,静态联编(Static Binding)和动态联编(Dynamic Binding)是两种不同的函数调用绑定机制,核心区别在于确定函数调用的时机和多态性的支持。以下是详细解释: 1. 静态联编(Static Binding) 定义:在编译阶段确定函数调用与具体实现的关系。特点: 由编译器直接确…

如何批量为多个 Word 文档添加水印保护

在日常办公中&#xff0c;Word文档添加水印是一项重要的操作&#xff0c;特别是在需要保护文件内容的安全性和版权时。虽然Office自带了添加水印的功能&#xff0c;但当需要一次性给多个Word文档添加水印时&#xff0c;手动操作显得非常繁琐且低效。为了提高效率&#xff0c;可…

【愚公系列】《Python网络爬虫从入门到精通》057-分布式爬取中文日报新闻数据

&#x1f31f;【技术大咖愚公搬代码&#xff1a;全栈专家的成长之路&#xff0c;你关注的宝藏博主在这里&#xff01;】&#x1f31f; &#x1f4e3;开发者圈持续输出高质量干货的"愚公精神"践行者——全网百万开发者都在追更的顶级技术博主&#xff01; &#x1f…

Linux系统编程 day9 SIGCHLD and 线程

SIGCHLD信号 只要子进程信号发生改变&#xff0c;就会产生SIGCHLD信号。 借助SIGCHLD信号回收子进程 回收子进程只跟父进程有关。如果不使用循环回收多个子进程&#xff0c;会产生多个僵尸进程&#xff0c;原因是因为这个信号不会循环等待。 #include<stdio.h> #incl…

微信小程序拖拽排序有效果图

效果图 .wxml <view class"container" style"--w:{{w}}px;" wx:if"{{location.length}}"><view class"container-item" wx:for"{{list}}" wx:key"index" data-index"{{index}}"style"--…

hadoop三大组件的结构及各自的作用

1 HDFS 1.1功能 HDFS 是 Hadoop 的分布式文件系统&#xff0c;用于存储和管理海量数据。它具有高容错性、高吞吐量和可扩展性&#xff0c;能够在多个节点上存储和管理大规模数据 1.2架构&#xff1a;采用主从架构&#xff0c;由一个 NameNode 和多个 DataNode 组成。NameNode…

解决jupyter notebook修改路径下没有c.NotebookApp.notebook_dir【建议收藏】

文章目录 一、检查并解决问题二、重新设置默认路径创作不易&#xff0c;感谢未来首富们的支持与关注&#xff01; 最近在用jupyter notebook编写代码时&#xff0c;更新了一下Scikit-learn的版本&#xff0c;然后重新打开jupyter notebook的时候&#xff0c;我傻眼了&#xff0…

MCP Host、MCP Client、MCP Server全流程实战

目录 准备工作 MCP Server 实现 调试工作 MCP Client 实现 MCP Host 配置 第一步:配置支持 function calling的 LLM 第二步:添加MCP Server 一般有两种方式,第一种json配置,第二种直接是Command形式,我这里采用Command形式 第三步:使用MCP Server 准备工作 安装…

4.21—4.22学习总结 JavaWeb:HTML-CSS

Web&#xff1a;能够通过浏览器访问到的网站。 Web标准&#xff1a; HTML&#xff1a; vscode中进行注释的快捷键为ctrl斜线/ h1的字体最大&#xff0c;依次递减&#xff0c;只存在h1—h6。 超链接&#xff1a; 设置字体颜色&#xff1a; 方式三写一个css文件&#xff0c;将方…

Kaamel Agent: 基于EU AI Act的AI影响评估(AIIA)

1. 引言&#xff1a;安全视角下的AI监管 随着人工智能技术的快速发展和广泛应用&#xff0c;AI系统在为社会带来创新和效率的同时&#xff0c;也引发了诸多关于安全、隐私和合规的担忧。在这一背景下&#xff0c;全球范围内涌现出多种监管框架和标准&#xff0c;旨在确保AI系统…

Mongodb分布式文件存储数据库

文章目录 一、MongoDB 简介基本信息特点内部组件 二、MongoDB 部署1. 安装依赖2. 解压部署并配置环境变量3. 修改配置文件以及启动服务4.数据库权限管理 三、MongoDB 管理1. 角色权限2. 操作命令用户管理命令常用命令&#xff08;Mongo4.2.8&#xff09;数据库相关用户相关集合…

麒麟V10安装MySQL8.4

1、下载安装包 wget https://cdn.mysql.com//Downloads/MySQL-8.4/mysql-8.4.5-1.el7.x86_64.rpm-bundle.tar2、解压 mkdir -p /opt/mysql tar -xvf mysql-8.4.5-1.el7.x86_64.rpm-bundle.tar -C /opt/mysql3、安装MySQL 3.1、卸载mariadb rpm -qa | grep mariadb rpm -e m…

Unreal如何使用后处理材质实现一个黑屏渐变效果

文章目录 前言相机后期处理材质创建材质相机设置动态修改FadeAlpha参数使用示例最后前言 UE5 开发VR ,如何通过PostProcess轻松实现黑屏渐变效果 最简单的办法,其实是使用一个半球形模型,遮挡住相机,然后控制这个半球形遮罩的颜色透明度,至少Unity中默认的Tunneling是这么…

其它生成式(对比列表生成式)

一、字典生成式&#xff1a; # keys[name, age, gender] # dic{key:None for key in keys} # print(dic) items[(name, Tom), (age, 18), (gender, male)] res{k:v for k,v in items if k ! gender} print(res) 二、集合生成式&#xff1a; keys[name, age, gender] set1{ke…

健身房管理系统(springboot+ssm+vue+mysql)含运行文档

健身房管理系统(springbootssmvuemysql)含运行文档 健身房管理系统是一个全面的解决方案&#xff0c;旨在帮助健身房高效管理其运营。系统提供多种功能模块&#xff0c;包括会员管理、员工管理、会员卡管理、教练信息管理、解聘管理、健身项目管理、指导项目管理、健身器材管理…

LeetCode 第 262 题全解析:从 SQL 到 Swift 的数据分析实战

文章目录 摘要描述题解答案&#xff08;SQL&#xff09;Swift 题解代码分析代码示例&#xff08;可运行 Demo&#xff09;示例测试及结果时间复杂度分析空间复杂度分析总结未来展望 摘要 在实际业务中&#xff0c;打车平台要监控行程的取消率&#xff0c;及时识别服务质量的问…