Java基础重温巩固
方法
- 方法与方法之间是平级关系,不能嵌套
- return表示结束当前方法
基本数据类型和引用数据类型
基本数据类型:数据存储在自己的空间中
引用数据类型:数据存储在其他空间中,自己空间存储的是地址值
值传递
- 传递基本数据类型时,传递的是真实的数据,形参的改变,不影响实际参数的值
- 要有new才会有堆内存
- 引用类型,传递的是地址值,形参的改变,影响实际参数的值
自动拆装箱
- 装箱(boxing):
将 基本数据类型 转换成 包装类
。 - 拆箱(unboxing):
将 包装类 转换成 基本数据类型
。 - 自动装箱:
将 基本数据类型 自动转换成 包装类
。 - 自动拆箱:
将 包装类 自动转换成 基本数据类型
。
// 自动装箱
Integer num1 = 6;
// 自动拆箱
int num2 = num1;
重载
-
同一个类中方法名相同,参数不同的方法。与返回值无关
- 参数不同,个数不同,类型不同,顺序不同
-
java虚拟机会根据不同的参数来区分同名的方法
构造方法
- 构造方法也叫构造器,构造函数
- 作用:创建对象给变量赋值,初始化
- 创建一次对象,构造方法就会被调用一次
特点:
1.方法名与类名相同,大小写也要一致
2.没有返回值类型,连void都没有
3.没有具体的返回值 (不能由retrun带回结果数据)
Java内存
成员变量和局部变量
内部类
1.什么是内部类?
-
写在一个类里面的类就叫做内部类
2.什么时候用到内部类?
- B类表示的事物是A类的一部分,且B单独存在没有意义比如: 汽车的发动机ArrayList的选代器人的心脏等等
-
内部类的分类
匿名内部类
- 为了避免一次调用就要创建一个类去继承父类
lambda表达式
- @FunctionalInterface接口加了这个注解不报错,就是函数式接口,可以使用lambda表达式
package com.liang.lambda;import java.util.Arrays;
import java.util.Comparator;public class lambdaDemo {public static void main(String[] args) {//lambda表达式Integer[] arr = {21,3,4,5,67,8,9};
// Arrays.sort(arr, new Comparator<Integer>() {
// @Override
// public int compare(Integer o1, Integer o2) {
// return o1-o2;
// }
// });//lambda完整格式
// Arrays.sort(arr,(Integer o1, Integer o2)->{
// return o1-o2;
// });//lambda省略写法Arrays.sort(arr,( o1, o2)-> o1-o2);System.out.println(Arrays.toString(arr));}
}
this
-
this就是找上级代码执行的内容
-
获取值就近原则
static
-
static表示静态,是java中的一个修饰符,可以修饰成员方法,成员变量
-
静态变量是随着类的加载而加载的,优先于对象出现的
-
静态变量是类共享的,谁要用谁就拿
-
类.方法调用工具类
- 静态方法里面没有this,不能调用非静态的成员变量
- 非静态方法里面,有个隐藏的this
- 静态会存在堆内存
总结:
-
静态方法中没有this关键字。
-
静态方法中,只能访问静态。
-
非静态方法可以访问所有。
-
静态方法只能调用和访问静态
-
静态优先于对象加载
增强for遍历
- 修改增强for中的变量,不会改变集合中原本的数据
排序算法
冒泡排序
- 冒泡排序:相邻的数据两两比较,小的放前面,大的放后面
- idea批量改变字母,选中需要修改的字母shit+f6改成你对应的
public static void main(String[] args) {//冒泡排序:相邻的数据两两比较,小的放前面,大的放后面int[] arr = {1,5,4,2,3};//外循环: 表示我要执行多少轮如果有n个数据,那么执行n - 1 轮for (int i = 0; i < arr.length-1; i++) {//0 1 2 3//内循环: 每一轮中我如何比较数据并找到当前的最大值// -1: 为了防止索引越界//-i: 提高效率,每一轮执行的次数应该比上一轮少一次for (int j = 0; j < arr.length-1-i; j++) {if (arr[j]>arr[j+1]){int temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}}}for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}
选择排序
- 从0索引开始,拿着每一个索引上的元素跟后面的元素依次比较小的放前面,大的放后面,以此类推。
public static void main(String[] args) {// 选择排序:
// 1,从@索引开始,跟后面的元素一一比较。
// 2,小的放前面,大的放后面。
// 3,第一次循环结束后,最小的数据已经确定
// 4,第二次循环从1索引开始以此类推。//选择排序int[] arr = {10,5,4,2,3};//最终代码://外循环: 几轮//i:表示这一轮中,我拿着哪个索引上的数据跟后面的数据进行比较并交换for (int i = 0; i < arr.length-1; i++) {for (int j = i+1; j < arr.length; j++) {if (arr[i]>arr[j]){int temp = arr[i];arr[i] = arr[j];arr[j] = temp;}}}for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}
相关文章:

Java基础重温巩固
方法 方法与方法之间是平级关系,不能嵌套return表示结束当前方法 基本数据类型和引用数据类型 基本数据类型:数据存储在自己的空间中 引用数据类型:数据存储在其他空间中,自己空间存储的是地址值 值传递 传递基本数据类型时&…...
Text2SQL 语义解析数据集、解决方案和学术论文资源整合
目录 什么是Text2SQL? Text2SQL语义解析数据集 Text2SQL解决方案 Text2SQL相关学术论文 欢迎大家,我是你们的博主,今天我们来讨论一个非常有趣且有挑战性的话题 —— Text2SQL。这个话题涉及到自然语言处理 (NLP),数据库查询语言 (SQL)&…...

redis集群+哨兵配置实操宝典
本地安装redis 配置集群和哨兵 1、下载安装redis #wget http://download.redis.io/releases/redis-5.0.12.tar.gz #下载安装包 #yum -y install gcc #安装依赖包 #tar -zxvf redis-5.0.12.tar.gz #cd redis-5.0.12 #make 2、主备配置 我们采用一主两备的结构 主机 192.168.3.…...
nginx的语法
概览 Nginx是一个高效、稳定的开源Web服务器和反向代理服务器,也可以用作邮件代理服务器、负载均衡器和HTTP缓存。以下是Nginx配置文件的一些基本语法和组成部分: 配置块(Block Directives):Nginx配置文件由许多嵌套的…...
华为OD机试之英文输入法(Java源码)
英文输入法 题目描述 主管期望你来实现英文输入法单词联想功能。 需求如下: 依据用户输入的单词前缀,从已输入的英文语句中联想出用户想输入的单词,按字典序输出联想到的单词序列, 如果联想不到,请输出用户输入的单词…...
一个团队管理者应该干什么?
文章目录 一、前言二、搞好团队气氛三、上下都要处理好四、做好计划并监督执行,控制风险。五、小结 一、前言 话说管理这个东西是猪有猪的想法,狗有狗的想法。所以不会有一个定论,总是有人定义这个管理方式,那个管理方式。看的管…...
服务器数据库文件加载到 MySQL
要将数据库文件加载到 MySQL 中,您可以使用以下步骤: 1. 确保 MySQL 服务器正在运行。您可以使用以下命令检查 MySQL 服务器的状态: sudo systemctl status mariadb 如果 MySQL 服务器没有运行,请使用以下命令启动它&…...

6-《网络面试》
6-《网络面试》 1.http是什么?http的工作机制?http报文?1.1 http工作机制:1.2 URL和http报文 2. HTTP请求方法和状态码3.Get和Post的区别4.HTTP的Header解析1.text/html2.x-www-form-urlencoded3.multipart/form-data4.applicatio…...

[高光谱]高光谱数据的获取与展示
一、环境准备 需要安装spectral包,这个包专门用于高光谱数据展示。 pip install spectral 二、数据加载 要预先准备原始高光谱的.mat数据和分类数据gt.mat(ground-turth);然后使用scipy.io中的loadmat(.)将其读入程序。 from scipy.io import loadmat…...

veth网卡的多队列及RPS
背景: 3.10内核下容器使用的veth网卡,默认开启的是一个队列,导致在某些单线程多TCP链接的应用场景下,出现某个CPU软中断高的情况。之前处理的方案一直是开启这个veth网卡的RPS,让其在多流场景下可以去分散到其它CPU上…...
国内的程序员数量是否已经饱和或者过剩?
首先,国内程序员数量确实在逐年增加,特别是近年来互联网行业迅猛发展,促进了技术人员需求的增长。然而,要判断程序员是否饱和并不是简单地看人数。下面我们细分几个角度来看看这个问题。 1、合格的程序员数量不够 国内的IT领域和…...
flutter不能抓包
需要获取手机IP地址设置才能抓包,获取IP地址,需要跟原生通讯获取, 1:获取IP地址 安卓代码: /*** 原生和flutter通讯交互*/ class MainActivity : FlutterActivity() {var methodChannel: MethodChannel? nullover…...

从桌面端到移动端,.NET MAUI为什么对WPF开发人员更简单?
.NET多平台应用程序UI(. NET MAUI)的市场吸引力与日俱增,这是微软最新的开发平台,允许开发者使用单个代码库创建跨平台应用程序。尽管很多WPF开发人员还没有跟上 .NET MAUI的潮流,但我们将在这篇文章中为大家展示他的潜…...
[Python]... 和pass
2.9 … 和pass 在Python中pass语句是用来在语法上需要一个语句的地方占位的。它不会执行任何操作。 ...是一个特殊的值,表示省略或未完成的代码。它可以用来实现抽象基类,也可以用来在语法上需要一个语句的地方占位,通常情况下,.…...

【信息安全案例】——软件解密技术(以OllyDbg为例)
目录 🕒 1. 软件解密技术🕘 1.1 概述🕘 1.2 爆破🕘 1.3 跟踪注册🕘 1.4 写出注册 🕒 2. 破解相关问题🕘 2.1 破解程度🕘 2.2 破解线索 🕒 3. 实验:使用 OllyD…...
【华为OD机试真题2023B卷 JAVAJS】阿里巴巴找黄金宝箱(I)
华为OD2023(B卷)机试题库全覆盖,刷题指南点这里 阿里巴巴找黄金宝箱(I) 知识点数组前缀和整数范围 时间限制:1s 空间限制:256MB 限定语言:不限 题目描述: 一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0~N的箱子,每个箱子上面…...

记录一次windows mysql5.7安装失败的过程
首先下载mysql安装包 windows版本 https://dev.mysql.com/downloads/installer/ 接着 在执行安装mysql msi安装包最后一步的时候,显示 Failed to start service MySQL57. 只有在任务处于完成状态(RanToCompletion、Fau 这时候 检查要么windows下面mysql的卸载残留没…...
前端知识复习一
1.页面导入样式时,使用link和import有什么区别? link属于html标签,import是css提供的。页面加载的同时,link同时也会加载;import引用的css等到页面加载完再加载 2.js函数有哪几种声明方式? 表达式和声明…...

低代码赋能生物药企数字化
一、关于复宏汉霖 汉霖是复星在2010年投资孵化的一家生物医药公司,经过这十几年的发展,2019年在港股上市,是生物药企18A企业之一。 经过这些年的发展,我们在管线方面布局了肿瘤、肢体、免疫、眼科类,从早研阶段到临床…...

【计算机视觉】最后显示的CIFAR-100数据集照片很模糊怎么解决?
文章目录 一、前言二、如何解决2.1 使用图像增强技术2.2 使用插值方法2.3 使用更高分辨率的图像数据集2.4 手动调整图像尺寸 三、总结 一、前言 如果从CIFAR-100数据集加载的图像显示模糊,可能有几个可能的原因: 分辨率较低:CIFAR-100数据集…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
SQL慢可能是触发了ring buffer
简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...
十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建
【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...
面试高频问题
文章目录 🚀 消息队列核心技术揭秘:从入门到秒杀面试官1️⃣ Kafka为何能"吞云吐雾"?性能背后的秘密1.1 顺序写入与零拷贝:性能的双引擎1.2 分区并行:数据的"八车道高速公路"1.3 页缓存与批量处理…...

MySQL体系架构解析(三):MySQL目录与启动配置全解析
MySQL中的目录和文件 bin目录 在 MySQL 的安装目录下有一个特别重要的 bin 目录,这个目录下存放着许多可执行文件。与其他系统的可执行文件类似,这些可执行文件都是与服务器和客户端程序相关的。 启动MySQL服务器程序 在 UNIX 系统中,用…...

Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用 Linux 内核内存管理是构成整个内核性能和系统稳定性的基础,但这一子系统结构复杂,常常有设置失败、性能展示不良、OOM 杀进程等问题。要分析这些问题,需要一套工具化、…...
结合PDE反应扩散方程与物理信息神经网络(PINN)进行稀疏数据预测的技术方案
以下是一个结合PDE反应扩散方程与物理信息神经网络(PINN)进行稀疏数据预测的技术方案,包含完整数学推导、PyTorch/TensorFlow双框架实现代码及对比实验分析。 基于PINN的反应扩散方程稀疏数据预测与大规模数据泛化能力研究 1. 问题定义与数学模型 1.1 反应扩散方程 考虑标…...