当前位置: 首页 > news >正文

Java笔记三

包机制:

为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。

包语句的语法格式为:pack pkg1[. pkg2[. pkg3...]];

 般利用公司域名倒置作为包名;如com.baidu.com,如图

 

 导包:

 为了能够使用某一个包的成员,需要在Java程序中明确导入该包。使用“import”语句可完成此功能

 import package[.package2...].(classname|*);

 JavaDoc

 生成自己的API文档

 

 ◆@author作者名

◆@version版本号

◆@since指明需要最早使用的jdk版本

◆@param参数名

◆@return返回值情况x BI UA.图三当您楼

◆@throws异常抛出情况

 Scanner对象

 我们可以通过Scanner类来获取用户的输入。

 ◆基本语法:`Scanner s = new Scanner(System. in);`

 

 可以看到输入的是Hello world但是输出的是Hello

 ◆通过Scanner类的next()与nextLine方法获取输入的字符串,在读取前我们一-般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。

 

import java.util.Scanner;public class work1 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);System.out.println("使用nextLine方式接收");//判断是否还有输入if (scanner.hasNextLine()){//使用next方式接收String str= scanner.nextLine();//程序会等待用户输入完毕System.out.println("输出的内容为:"+str);}scanner.close();}
}

 

 

next与nextLine的区别

◆next():

◆1、一定要读取到有效字符后才可以结束输入。

◆2. 对输入有效字符之前遇到的空白, next() 方法会自动将其去掉。

◆3.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。

◆4、next()不能得到带有空格的字符串。

 ◆nextLine():

◆1、以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。

◆2、可以获得空白。

 进阶使用实例:

 

import java.util.Scanner;public class work2 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);int i=0;float f=0.0f;System.out.println("请输入整数:");//如果...那么if (scanner.hasNextFloat()){i = scanner.nextInt();System.out.println("整数数据:"+i);}else {System.out.println("输入的不是整数数据!");}System.out.println("请输入小数:");//如果...那么if (scanner.hasNextFloat()){f = scanner.nextFloat();System.out.println("小数数据:"+f);}else {System.out.println("输入的不是小数数据!");}scanner.close();}
}

 求和与平均值示例代码:

 

public class day4 {public static void main(String[] args) {//输入多个数字,求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来借宿输入并输出执行结果Scanner scanner=new Scanner(System.in);//和double sum=0;//计算输入了多少个数字int m=0;//通过循环判断是否还有输入,并在里面对每一次进行求和和统计while (scanner.hasNextDouble()){double x=scanner.nextDouble();m=m+1;sum=sum+x;System.out.println("你输入了第"+m+"个数据,然后当前结果sum="+sum);}System.out.println(m+"个数的和为"+sum);System.out.println(m+"个数的平均值是"+(sum/m));}
}

 单选择结构if...else...实例

 

public class work3 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);System.out.println("请输入内容:");String s=scanner.nextLine();//equals:判断字符串是否相等if (s.equals("Hello")){System.out.println(s);}else System.out.println("End");scanner.close();}
}

 选择语句switch case实例

public class work4 {public static void main(String[] args) {//case穿透  //switch匹配一个具体的值char grade='C';switch (grade){case 'A':System.out.println("优秀");break;//可选case 'B':System.out.println("良好");case 'C':System.out.println("及格");case 'D':System.out.println("再接再厉");case 'E':System.out.println("挂科");default://可选System.out.println("未知等级");}}
}

 

 

 

 1+2+3+...+100=?

while案例

 

public class work5 {public static void main(String[] args) {//计算1+2+3+...+100=?int i=0;int sum=0;while (i<=100){sum=sum+i;i++;}System.out.println(sum);}
}

 do...while案例

 

public class work6 {public static void main(String[] args) {int i=0;int sum=0;do {sum=sum+i;i++;}while (i<=100);System.out.println(sum);}
}

 while与do while的区别

 ◆while先判断后执行。dowhile是先执行后判断!

◆Do...while总是保证循环体会被至少执行一次!这是他们的主要差别。

 代码解释如下:

public class work7 {public static void main(String[] args) {int a=0;while (a<0){System.out.println(a);a++;}System.out.println("=============");do {System.out.println(a);a++;}while (a<0);}
}

 

for实例

实例一:100以内奇数与偶数的和

 

public class work8 {public static void main(String[] args) {int oddSum=0;//奇数的和int evenSum=0;//偶数的和for (int i = 0; i <=100; i++) {if (i%2!=0){oddSum+=i;}else {evenSum+=i;}}System.out.println("技术的和:"+oddSum);System.out.println("偶数的和:"+evenSum);}
}

 实例二:输出1-1000之间能被5整除的数,并且每行输出3个

 

public class work9 {public static void main(String[] args) {for (int i = 0; i < 1000; i++) {if (i%5==0){System.out.print(i+"\t");}if (i%(5*3)==0){System.out.println();//每三个换一行//System.out.println("\n");}}}
}

println 输出完会换行

print 输出完不会换行

九九乘法表

 

public class work11 {public static void main(String[] args) {for (int j = 1; j <= 9; j++) {for (int i = 1; i <= j; i++) {System.out.print(i + "*" + j + "=" + (j * i)+"\t");}System.out.println();}}
}

 

用两个循环使用两个乘数都增大,使用i<j去除多余项,注意print不换行,println换行,也就是乘数j每增大1换一行

增强for循环

 增强for循环语法格式如下:

 for(声明语句:表达式)
{
    //代码句子
}

声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。

表达式:表达式是要访问的数组名,或者是返回值为数组的方法

 break与continue

 break:跳出这个循环但代码继续往下运行如:

public class work13 {public static void main(String[] args) {int i=0;while (i<100){i++;System.out.println(i);if(i==30){break;}}System.out.println("123");}
}

 

 continue:在循环语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定

 

public class continuework {public static void main(String[] args) {int i=0;while(i<100){i++;if (i%10==0) {System.out.println("no");continue;}System.out.println(i);}}
}

 

 打印三角形案例

 

public class sanjiao {public static void main(String[] args) {for (int i = 1; i <= 5; i++) {//5行的一个三角for (int j = 5; j >= i; j--) {System.out.print(" ");}for (int j = 1; j <= i; j++) {System.out.print("*");}//打印左半个三角for (int j = 1; j < i; j++) {System.out.print("*");}//打印右半个三角System.out.println();}}
}

 学习资源来自哔哩哔哩——遇见狂神说——狂神说Java

 

相关文章:

Java笔记三

包机制&#xff1a; 为了更好地组织类&#xff0c;Java提供了包机制&#xff0c;用于区别类名的命名空间。 包语句的语法格式为&#xff1a;pack pkg1[. pkg2[. pkg3...]]; 般利用公司域名倒置作为包名&#xff1b;如com.baidu.com&#xff0c;如图 导包&#xff1a; 为了能够…...

ElementUI之首页导航与左侧菜单

目录 一、Mock 1.1 什么是Mock.js 1.2 安装与配置 1.2.1 安装mock.js 1.2.2 引入mock.js 1.3 mock.js使用 1.3.1 定义测试数据文件 1.3.2 mock拦截Ajax请求 1.3.3 界面代码优化 二、总线 2.1 定义 2.2 类型分类 2.3 前期准备 2.4 配置组件与路由关系 2.4.1 配置…...

java项目之在线教育资源管理系统(ssm源码+文档)

项目简介 在线教育资源管理系统实现了以下功能&#xff1a; 管理员&#xff1a;个人中心、学生管理、教师管理、公告信息管理、课程信息管理、试题管理、留言板管理、管理员管理、试卷管理、系统管理、考试管理。学生&#xff1a;个人中心、留言板管理、考试管理&#xff0c;…...

C/S架构学习之UDP服务器

UDP服务器的实现流程&#xff1a;一、创建用户数据报套接字&#xff08;socket函数&#xff09;&#xff1a;通信域选择IPV4网络协议、套接字类型选择数据报式&#xff1b; int sockfd socket(AF_INET,SOCK_DGRAM,0); 二、填充服务器的网络信息结构体&#xff1a;1.定义网络信…...

磁盘占用率100% 的优化方案

1.禁用不必要的系统服务 右键点击此电脑&#xff0c;打开管理 打开服务 寻找SysMain 右键属性 》 禁用 》 停止 》 应用 SysMain的作用&#xff1a;当开机后&#xff0c;windows会加载大量的应用程序预加载到内存中&#xff0c;会在后台预加载数据&#xff08;如果是旧版本win…...

vue组件的通信

文章目录 组件通信父传子父传子:通过prop来进行通信 子传父先在父组件用注册方法 , 在子组件触发使用 emit 函数 组件间通信-平行组件使用事件总线的方法,也就是把整个vue提出来,当为一个事件总线 其他组件通信父组件 provide来提供变量,然后再子组件中通过inject来注入变量 组…...

(搞定)排序数据结构(1)插入排序 选择排序+冒泡排序

目录 本章内容如下 一:插入排序 1.1插入排序 1.2希尔排序 二&#xff1a;选择排序 2.1选择排序 三:交换排序 3.1冒泡排序 一:插入排序 1.1直接插入排序 说到排序&#xff0c;其实在我们生活中非常常见&…...

C++ 类访问修饰符 public、private、protected

数据封装是面向对象编程的一个重要特点&#xff0c;它防止函数直接访问类类型的内部成员。类成员的访问限制是通过在类主体内部对各个区域标记 public、private、protected 来指定的。关键字 public、private、protected 称为访问修饰符。 一个类可以有多个 public、protected…...

pytorch学习笔记——BCE与CE

BCELoss的话只需要网络输出一个通道&#xff0c;CE Loss(Cross Entropy Loss)需要输出n_class个通道。 对于二分类任务可以使用CE Loss输出两个通道&#xff0c;也可以使用BCE Loss输出一个通道。 https://www.jianshu.com/p/5b01705368bb https://zhuanlan.zhihu.com/p/372628…...

win使用git(保姆级教程)

序言 上学期间用的git并不多&#xff0c;但是从研三实习以及后面工作来看&#xff0c;git是一项必备技能&#xff0c;所以在此来学习一下。 下载git安装包 打开网站&#xff0c;根据需求来下载&#xff1b;一般按照如下方式进行下载&#xff1a; 然后安装的时候记得按下图勾…...

Python图像处理-----几何变换

文章目录 一、图像几何变换理论二、图像平移2.1 使用数学公式的实现方式为:2.2 使用矩阵实现的方式为2.3 使用opencv三、图像缩放3.1 用数学式子表示为公式(a为缩放系数):3.2 用矩阵表示如公式所示:一、图像几何变换理论 图像几何变换不改变图像的像素值,在图像平面上进行像…...

如何正确选择研究方向?如何实现论文创新?

学术评价是遵循“质量第一”原则的,所以对于研究生来说,从一开始就要把路子走正,自觉树立精品意识,把精力高度集中到提高学位论文的质量上来。这里,根据本人多年来指导博士和硕士研究生的体会,就人文社科研究生学位论文的选题与创新略述管见。 学位论文选题的两个层面 …...

Postgresql源码(113)表达式JIT计算简单分析

相关 《Postgresql源码&#xff08;85&#xff09;查询执行——表达式解析器分析&#xff08;select 11如何执行&#xff09;》 《Postgresql源码&#xff08;113&#xff09;表达式JIT计算简单分析》 1 普通表达式计算 普通表达式计算发生在优化器preprocess_expression中&am…...

CMU15-213 课程笔记 04-Floating Point

文章目录 浮点数如何用二进制表示IEEE 浮点数标准IEEE 浮点数实现IEEE 浮点数在内存里 E exp - bias 计算指数M 1.xxx 尾数计算举例&#xff1a;对一个浮点数进行转换一些关于浮点数的计算等等 浮点数如何用二进制表示 计算机内部的浮点数不是这样存在内存里的&#xff08;至…...

DockerKubernetes ❀ Service下Port端口区分

文章目录 概述案例 概述 在Kubernetes中&#xff0c;Service&#xff08;svc&#xff09;是一种抽象机制&#xff0c;用于将一组 Pod 暴露给其他应用程序或服务。Service 可以有三种类型的端口&#xff1a; nodePort&#xff1a;这是 Service 在节点上公开的端口。可以使用此…...

【C++】笔试训练(一)

目录 一、选择题二、编程1、组队竞赛2、删除公共字符 一、选择题 1、以下for循环的执行次数是&#xff08;&#xff09; for (int x 0, y 0; (y 123) && (x < 4); x);A 是无限循环 B 循环次数不定 C 4次 D 3次 答案&#xff1a;C 2、以下程序的运行结果是&…...

数据结构与算法之集合: Leetcode 349. 两个数组的交集 (Typescript版)

两个数组的交集 https://leetcode.cn/problems/intersection-of-two-arrays/description/ 描述 给定两个数组 nums1 和 nums2 &#xff0c;返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1 输入&#xff1a;nums1 [1,2,…...

Unity 内存性能分析器 (Memory Profiler)

一、 安装 安装有两种方式一&#xff1a; add package : com.unity.memoryprofiler方式二&#xff1a; From Packages : Unity Registry 搜索 Memory Profiler 二、 使用 打开&#xff1a;Windows - > Analysis - > Memory Profiler 打开MemoryProfiler界面&#xff0…...

前端携带Bearer Token

前端携带Bearer Token 在前端使用 axios 发送请求时&#xff0c;可以通过设置请求头来携带 Bearer Token。Bearer Token 是一种常用的身份验证方式&#xff0c;它通常用于 OAuth2 授权流程中。 要在 axios 中携带 Bearer Token&#xff0c;可以通过设置 Authorization 请求头…...

leetcode 周赛 364

参考视频&#xff1a; 单调栈【力扣周赛 364】 文章目录 8048. 最大二进制奇数100049. 美丽塔 I100048. 美丽塔 II100047. 统计树中的合法路径数目 8048. 最大二进制奇数 题目链接 给你一个 二进制 字符串 s &#xff0c;其中至少包含一个 1 。 你必须按某种方式 重新排列 字…...

2026权威评测:TOP5毕业论文AIGC降重方案对比与首选建议

全景速览&#xff1a;2026盲审季TOP5降重工具核心对比表 排名工具名称降重与去痕效能核心适用场景致命短板 / 核心优势1Scholingo靠岸妙写★★★★★国内本科/硕博盲审、核心期刊投稿优势&#xff1a;DOM级自定义大纲独家AIGC物理去痕2Paperpal★★★★☆SCI/海外顶刊纯英润色…...

Phi-4-mini-reasoning推理模型5分钟快速上手:数学题逻辑题一键解答

Phi-4-mini-reasoning推理模型5分钟快速上手&#xff1a;数学题逻辑题一键解答 1. 为什么选择Phi-4-mini-reasoning&#xff1f; 如果你经常需要解决数学题、逻辑题或者需要一步步分析的问题&#xff0c;Phi-4-mini-reasoning就是为你量身定制的AI助手。这个模型不像那些通用…...

保姆级教程:用LongCat动物百变秀,快速给猫狗加帽子、换造型

保姆级教程&#xff1a;用LongCat动物百变秀&#xff0c;快速给猫狗加帽子、换造型 1. 为什么选择动物百变秀&#xff1f; 给宠物照片添加创意元素一直是许多人的需求&#xff0c;但传统方法要么需要专业PS技能&#xff0c;要么效果生硬不自然。LongCat动物百变秀解决了这个痛…...

卡尔曼滤波调参实战:如何用MATLAB让MPU6050的加速度数据更‘听话’?

卡尔曼滤波调参实战&#xff1a;如何用MATLAB让MPU6050的加速度数据更‘听话’&#xff1f; 当你在MATLAB中第一次看到MPU6050的原始加速度数据时&#xff0c;那些疯狂跳动的曲线可能会让你怀疑人生。别担心&#xff0c;这不是传感器坏了&#xff0c;而是现实世界本就充满噪声…...

cool-admin(midway版)数据权限缓存:基于用户角色的权限数据预加载

cool-admin(midway版)数据权限缓存&#xff1a;基于用户角色的权限数据预加载 【免费下载链接】cool-admin-midway &#x1f525; cool-admin(midway版)一个很酷的后台权限管理框架&#xff0c;模块化、插件化、CRUD极速开发&#xff0c;永久开源免费&#xff0c;基于midway.js…...

突破内容采集瓶颈:XHS-Downloader的5大行业解决方案与效率提升指南

突破内容采集瓶颈&#xff1a;XHS-Downloader的5大行业解决方案与效率提升指南 【免费下载链接】XHS-Downloader 小红书&#xff08;XiaoHongShu、RedNote&#xff09;链接提取/作品采集工具&#xff1a;提取账号发布、收藏、点赞、专辑作品链接&#xff1b;提取搜索结果作品、…...

LumiPixel Canvas Quest集成Vue.js:打造动态人像画廊管理后台

LumiPixel Canvas Quest集成Vue.js&#xff1a;打造动态人像画廊管理后台 1. 项目背景与需求分析 在数字内容创作领域&#xff0c;AI生成人像正成为设计师和内容创作者的重要工具。传统人工绘制方式耗时费力&#xff0c;而直接使用AI生成工具又缺乏系统化管理。我们团队最近用…...

C++ 自动微分引擎:基于模板元编程的静态反向传播梯度流构建

C 自动微分引擎&#xff1a;基于模板元编程的静态反向传播梯度流构建尊敬的各位专家、同行&#xff0c;大家好。今天&#xff0c;我们将深入探讨一个兼具理论深度与工程实践价值的主题&#xff1a;如何利用 C 的模板元编程&#xff08;Template Metaprogramming&#xff09;技术…...

W25Q128JWSIQ 串行 NOR Flash 存储器 Winbond 全新原装 进口芯片IC

W25Q128JWSIQ 是华邦&#xff08;Winbond&#xff09;推出的一款1.8V 128Mbit 高速串行 NOR Flash 存储器&#xff0c;采用 133MHz 四线 SPI 接口和 SOIC-8 封装&#xff0c;具备超低功耗、工业级宽温工作范围和高可靠性等特性&#xff0c;是物联网设备、汽车电子、工业控制等低…...

天问Block环境下ASRPRO语音芯片实战:语音交互、GPIO控制与PWM调光开发指南

1. 天问Block与ASRPRO芯片开发入门 第一次接触天问Block和ASRPRO语音芯片时&#xff0c;我被它们的组合惊艳到了。这个开发环境就像乐高积木一样&#xff0c;通过拖拽代码块就能完成复杂的功能开发&#xff0c;特别适合像我这样的硬件爱好者。ASRPRO作为一款专为语音交互设计的…...