数组 原理java 03

笔试_0001(数组A内无重复,如A=[a,b,c])

public static void main(String[] args) { // question1(); // question2(); System.out.println(~1 + 1); } private static void question1() { /* 思路,规律: 利用字 ......
数组 笔试 0001

java课后作业2

import java.util.ArrayList;import java.util.List;public class RandomNumberGenerator { public static List<Integer> generator(int a,int c,int m,int x0,i ......
java

Java 中for循环和foreach循环哪个更快?

摘要:本文由葡萄城技术团队于博客园发布。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 在Java编程中,循环结构是程序员常用的控制流程,而for循环和foreach循环是其中比较常见的两种形式。关于它们哪一个更快的讨论一直存在。本文旨在探究Java ......
更快 foreach Java for

JAVA 后端 记录方法运行时间

LocalDateTime ldStart= LocalDateTime.now();//记录开始时间//中间是需要计算时间的代码段落 LocalDateTime ldEnd= LocalDateTime.now();//记录结束时间Duration du=Duration.between(ldSt ......
时间 方法 JAVA

中国这么多 Java 开发者,应该诞生出生态级应用开发框架

1、必须要有,不然就永远不会有 应用开发框架,虽然没有芯片、操作系统、数据库、编程语言这些重要。但是最终呈现在用户面前的,总是有软件部分。而软件系统开发,一般都需要应用开发框架,它是软件系统的基础性部件之一。 很多很多软件系统都会有 Java 开发的部分,尤其是政府部门的软件系统大量的使用了 Jav ......
应用开发 开发者 框架 Java

随想录Day2|977. 有序数组的平方、209. 长度最小的子数组、59. 螺旋矩阵Ⅱ

随想录Day2|977. 有序数组的平方、209. 长度最小的子数组、59. 螺旋矩阵Ⅱ 977. 有序数组的平方 LeetCode题目 文章讲解 视频讲解 给定一个按非递减顺序的整数数组nums,返回每个数字的平方组成的新数组,也要按照非递减顺序排序。 1 <= nums.length <= 10 ......
数组 随想录 矩阵 螺旋 随想

山脉数组的峰顶索引

山脉数组的峰顶索引 https://leetcode.cn/problems/peak-index-in-a-mountain-array/ 思路 题目要求时间复杂度为\(O(log(n))\),所以不能通过遍历的方法找极值点。实际上,可以使用二分法 我们使用「二分」进行查值,需要确保序列本身满足「 ......
峰顶 数组 索引

JAVA基础 —— 面向对象内存图

JAVA基础 —— 面向对象内存图 ......
对象 内存 基础 JAVA

java内存分配(堆,栈,方法区,常量池)图解

大家都知道,java程序是运行在jvm(java虚拟机)上的,因此Java的内存分配是在JVM中进行的。那么在程序内存分配上面,大致分为:本地方法栈、程序计数器、虚拟机栈、java堆、方法区。这五类,本次主要讲解的是虚拟机栈、java堆和方法区中的内容。 栈:存放基本数据类型的数据、引用数据类型的变 ......
常量 内存 方法 java

Java 序列化与反序列化的疑问

关于序列化和反序列化的疑问 为什么需要序列化和反序列化 ? 因为计算机底层存储和传输都是二进制,所以需要将对象转化成字节数组。那么问题来了,只需要转成字节数组就行了,那为啥还要弄这么多东西?搞这么复杂? 因为直接转生成的字节数组是不规则的,所以我们不能通过这样的字节数组把原来的对象还原出来,那么我们 ......
序列 疑问 Java

java语言基础--对象内存图解

在JVM内存里面主要分布有以下三个区域: 栈:存放基础数据和自定义对象的引用 堆:主要存储创建的对象,即new出来的对象。 方法区:加载存放class文件(字节码文件) 创建一个对象: 通过上图来看,程序是这样执行的: 将StudentTest01.class文件加载到方法区 将Student.cl ......
语言基础 对象 内存 语言 基础

JVM面试题、关键原理、JMM

boolean:占用1个字节,取值为true或false。 byte:占用1个字节,范围为-128到127。 short:占用2个字节,范围为-32,768到32,767。 int:占用4个字节,范围为-2,147,483,648到2,147,483,647。 long:占用8个字节,范围为-9,2 ......
原理 关键 JVM JMM

Java基础

Java基础 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。 基本语法 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母 ......
基础 Java

容斥原理应用Acwing890借鉴题解

参考文献 简单的容斥原理介绍请看下图: C++ 代码 简单的容斥原理介绍请看下图: 本题思路: 将题目所给出的m个数可以看成是m位的二进制数,例如 当p[N]={2,3}时,此时会有01,10,11三种情况 而二进制的第零位表示的是p[0]上面的数字2,第1位表示p[1]上面的数字3 所以当i=1时 ......
题解 原理 Acwing 890

java--内存与数据结构

JVM 内存划分 栈一种数据结构特点:先进后出(FILO)入栈:把元素放到栈里栈顶:栈中的第一个元素栈底:栈中的最后一个元素出栈:把元素从栈里移除 基本数据类型–值传递 引用类型–地址传递 堆数组在堆中存储 若堆中的内存空间没有被引用的时候,就会变成垃圾,等着垃圾回收器回收 垃圾回收机制 对象在堆中 ......
数据结构 内存 结构 数据 java

Java基础语法(1)

Java基础语法 JAVA--黑马程序员 笔记 一、Java入门 1、JAVA 是一种很火的计算机语言。 2、JAVA 代码编写分三步: 编写程序源码,即编写一个java文件 编译:翻译文件, javac是JDK提供的编译工具,对java文件编译后会产生一个class文件,class文件即交给计算机 ......
语法 基础 Java

马克思主义基本原理概论

马克思主义基本原理概论 绪论 马克思主义是关于无产阶级和人类解放的科学 第一节 马克思主义的产生和发展 第二节 马克思主义科学性与革命性的统 第三节 学习、运用和发展马克思主义 第一章 物质世界及其发展规律 第一节 物质世界和实践 第二节 物质世界的普遍联系和永恒发展 第三节 客观规律性与主观能动性 ......
马克思主义 概论 原理

JAVA基础学习——面型对象进阶

1 static 2 继承 1 static 1.1 内存图 静态对象是随着类加载,非静态对象随着对象来的: 引用类型初始化时null值。 1.2 static 静态变量、静态方法 1.3 总结 ① 静态方法中没有this,非静态方法中有 静态的一般用于共享,不面向某一个对象,所以没有this; 而 ......
对象 基础 JAVA

SpringBoot中内置Servlet容器原理

本篇博客会梳理一下SpringBoot内置Servlet容器的原理: 原理其实跟SpringBoot中的内置Tomcat的启动原理差不多,我们从整个源码进行梳理一下。 我们会发现当我们从Spring,SpringMVC演化到SpringBoot后发现采用SpringBoot后不需要配置Tomcat服 ......
容器 SpringBoot 原理 Servlet

4.7 Java this关键字详解(3种用法)

this 关键字是 Java 常用的关键字,可用于任何实例方法内指向当前对象,也可指向对其调用当前方法的对象,或者在需要当前类型对象引用时使用。下面我们根据示例分别讲解 this 关键字的作用。 this.属性名 大部分时候,普通方法访问其他方法、成员变量时无须使用 this 前缀,但如果方法里有个 ......
关键字 关键 Java this 4.7

4.6 Java成员方法的声明和调用

声明成员方法可以定义类的行为,行为表示一个对象能够做的事情或者能够从一个对象取得的信息。类的各种功能操作都是用方法来实现的,属性只不过提供了相应的数据。一个完整的方法通常包括方法名称、方法主体、方法参数和方法返回值类型,其结构如图 1 所示。 图 1 方法组成元素 成员方法一旦被定义,便可以在程序中 ......
成员 方法 Java 4.6

Python中对二维数组及嵌套字典进行排序(sorted和lambda的组合)

一、对数组进行排序 # coding=utf-8# 对二维数组-嵌套字典进行排序lista = [{"a": 10}, {"a": 5}, {"a": 8}]# 根据嵌套字典的键进行排序-降序list1 = sorted(lista, key=lambda x: x['a'], reverse=Tr ......
数组 字典 Python sorted lambda

java8 新特性之日期时间处理 LocatDate、LocalTime、LocalDateTime、ZonedDateTime、DateTimeFormatter

一、LocalDate、LocalTime、LocalDateTime 和常用API 1、LocalDate public void test01(){ //1.创建指定的日期 LocalDate date1 = LocalDate.of(2021,05,06); System.out .print ......

Java中print和println的区别

Java中print()和println()的区别 区别是print()输出完毕之后不换行,而println()输出完毕后会换行,所以println()在不输出任何东西的时候,就只输出一个换行符。 示例如下: System.out.println("a"); System.out.print("b" ......
println print Java

java基础-IO流-day13

目录1. IO的概念IO流的分类2. 一个一个字符 完成文件的复制3. 非文本 读取与复制 1. IO的概念 计算机内存中的数据 <--> 硬盘里面的数据 也就是数据的落盘 以及 数据的读取 文件的操作 package com.msb.io01; import java.io.File; impor ......
基础 java day IO 13

数组反转以及二位数组

数组反转就是新生成一个数组,来反向接受原数组位置的数据 public static int[] reverse(int[] array){ int[ ] reverse = new int[ ] array.length; for(int i=0,j=array.lenhth;i<array.len ......
数组 位数

Winrar代码执行漏洞(CVE-2023-38831)的原理分析

背景 在2023年8月23日,Group-IB威胁情报机构发布了一份报告,详细介绍了WinRAR任意执行漏洞CVE-2023-38831的攻击活动[1]。根据该报告,这个漏洞最早于2023年4月被攻击者利用,然后在2023年7月被Group-IB威胁情报机构发现并报告给了RARLAB。最终,RARL ......
漏洞 原理 代码 Winrar 38831

Leetcode刷题448.找到所有数组中消失的数字

给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。 示例 1: 输入:nums = [4,3,2,7,8,2,3,1] 输出:[5,6] 示例 2: 输入:nums ......
数组 Leetcode 数字 448

基于Java面向对象思想对个人项目的深度分析

基于Java面向对象思想对个人项目的深度分析 一、摘要 本文站在java面向对象思想的角度,深入研究了GJH同学Java中小学数学卷子自动生成程序的工程代码。通过对核心类、继承与多态、封装与解耦等面向对象思想和生成题目算法进行了深度分析,全面探讨了系统的优缺点与改进空间。 关键字:java面向对象思 ......
深度分析 深度 对象 思想 项目

数组

感觉不太好记 定义有两种 int[] a = {1,2,3,4,5,6,7}//这种是静态初始化 int[] a = new int[10]//这种是动态初始化 动态初始化感觉赋值有点费劲 a[0]=1;//或者用for循环来赋值 还有实现一个简单的四则运算计算器,主要用了switch 语句和sca ......
数组