数组 原理java 03

leetcode-前缀和数组&差分数组

前缀和数组: 前缀和技巧适用于快速、频繁地计算一个索引区间内的元素之和。(仅仅适用于原数组不变的情况,如果原数组经常修改,则需要考虑差分数组。) 看两道例题就清楚了: 1. 303. 区域和检索 - 数组不可变 - 力扣(LeetCode) 由于要频繁计算某个区间内的元素之和,暴力解法复杂度太大,显 ......
数组 前缀 leetcode amp

Java学习笔记(十七)

1、手写一个懒汉式的单例模式&解决其线程安全问题,并且说明为什么这样子去解决 class Mythread extends Thread{ private static Mythread mythread; private Mythread() { } public static Mythread ......
笔记 Java

console.log 弊端-数组有值但是打印出来空值

情况:数组有对象但是length为0 原因:该数组原本有值,但是被数组操作api改变了数组,打印出来的值是已经被操作的数组 ......
数组 弊端 console log

java 8新特性 list转map

List<Object> 转Map<String,List<String>> Map<String, List<String>> skillAndList = list.stream().collect(Collectors.groupingBy(Employee::getSkillId, Coll ......
特性 java list map

java陷阱之数据库主从

现象 客户遇到工单缺少描述,查询日志写入描述报错,但那是工单又正常生产 原因 先写入工单再查询工单实时性要求比较高的不能走从库, 还有就是service层方法命名不规范,不点进去看根本不知道走从库,如果要走从库应该带上Slave后缀,查询缓存也一样带上cache findProviderIdByTi ......
主从 陷阱 数据库 数据 java

linux中,如何在/etc/hosts中将一个域名解析为多个IP地址?工作原理是什么?

可以在/etc/hosts文件中,将一个域名配置多个IP地址 比如: [root@nccztsjb-node-23 yamls]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.local ......
中将 原理 多个 地址 域名

java实际开发中接口文档是自己写还是架构师写?

软件工程的两种方法下,由后端决定接口都是不对的。 第一种软件工程的方法:瀑布模型,自顶而下,逐步细化。 接口会变,但是接口要提前设计。接口不是后端开发完成之后才“自然”产生的,那不是自然,而是无序。 **前后端分离的开发,应该是面向“API”的开发。API的设计并不能由前端或后端一方决定或主导,而是 ......
架构 接口 实际 文档 还是

获取数组对象中的某一属性值

如果想要获取到arr数组对象中key为name的属性,需要用到引号 let arr = [ { name: '1', prop: '123' }, { name: '2', prop: '111' } ] arr.forEach(item => { console.log('123', item[' ......
数组 属性 对象

java反射之-InvocationHandler使用

InvocationHandler 是 Java 中的一个接口,是 Java 反射 API 的一部分。与 Proxy 类一起使用,用于动态创建接口的代理实例。 在 Java 中使用 Proxy 类创建代理对象时,需要提供一个 InvocationHandler 实现来定义代理对象的行为。Invoca ......
InvocationHandler java

[转]Java如何对一个对象进行深拷贝

介绍 在Java语言里,当我们需要拷贝一个对象时,有两种类型的拷贝:浅拷贝与深拷贝。浅拷贝只是拷贝了源对象的地址,所以源对象的值发生变化时,拷贝对象的值也会发生变化。而深拷贝则是拷贝了源对象的所有值,所以即使源对象的值发生变化时,拷贝对象的值也不会改变。如下图描述: 了解了浅拷贝和深拷贝的区别之后, ......
拷贝 对象 Java

Java学习笔记(十六)

1.什么是线程? 线程是指操作系统中的一种执行单元,它是进程中的一部分,可以看作是轻量级的进程。与进程不同的是,线程共享同一进程的地址空间和系统资源,如打开文件和信号处理等,但每个线程都有自己的程序计数器(PC)和栈,用于执行代码和存储局部变量等数据。 2。线程和进程有什么区别? 线程和进程都是操作 ......
笔记 Java

Linux多线程03-终止线程

### pthread_exit 和 pthread_self 和 pthread_equal 描述: #### **pthread_exit** > pthread_exit() 函数终止调用该函数的线程,并通过retval返回一个值,如果该线程是可连接的,则在同一进程中调用pthread_joi ......
线程 Linux 03

【从零开始学微服务】03.软件架构的演化过程

>大家好,欢迎来到万猫学社,跟我一起学,你也能成为**微服务专家**。 目前大部分的企业系统和互联网应用都是采用Web的形式提供服务能力,根据系统的组织方式和部署结构,我们通常把软件架构的演化过程分为以下几个阶段: - 单体架构 - 垂直架构 - SOA架构 - 微服务架构 # 单体架构 单体架构, ......
架构 过程 软件 03

HENU 编译原理实验二 语法分析器代码

## 语法分析 ```cpp #include using namespace std; //词法分析器 //以下是我对单词种别划分 /* 关键字: begin 1 end 2 if 3 then 4 while 5 do 6 const 7 var 8 call 9 procedure 10 od ......
分析器 语法 原理 代码 HENU

HENU 编译原理实验三 语义分析及中间代码产生

## 语义分析及中间代码产生 > 抽象语法树生成应该是正确的,四元式是**错误的**,留个坑以后补 ```cpp #include using namespace std; #ifdef Nanfeng1997 #include #endif //词法分析器 //以下是我对单词种别划分 /* 关键字 ......
语义 原理 代码 HENU

HENU编译原理实验一 词法分析器代码

## 词法分析器 ```cpp #include using namespace std; vector key, identify, symbol; unordered_map key_map, identify_map, symbol_map; // value unordered_map le ......
词法 分析器 原理 代码 HENU

JAVA方法

java方法 原子性 ​​public static int max(int num1,int num2){ int result = 0;//初始化 if(num1==num2){ System.out.println("num1==num2"); return 0;//终止方法 } if(num ......
方法 JAVA

JS(数组)

一 数组的概念 问:之前学习的数据类型,只能存储一个值。如果我们想存储班级中所有学生的姓名,那么该如何存储呢?答:可以使用数组(Array)。数组可以把一组相关的数据一起存放,并提供方便的访问(获取)方式。问:什么是数组呢?答:数组是指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类 ......
数组

6月25日java学习日记

端午节小休息了几天,断开连接了几天,希望快速状态回到吧,今天了解了部分java异常类,Exceptions类为异常类,学习了throw关键字,以及了解了try catch的用法(基本与C#相同),同时使用HasgMap以及List.of方法实现了斗地主案例。 ......
日记 java

学习Java前的一些介绍

1.java开发环境搭建 卸载: 删除Java的安装目录 删除JAVA_HOME 删除path下关于java的目录 java -version 验证 安装: 创建jdk和jre两个目录(还可以创建一个code目录存放代码) 百度搜索jdk(建议安装jdk8) 同意协议,找到对应版本并且下载 双击安装 ......
Java

03 | 事务隔离:为什么你改了我还看不见?

## 03 | 事务隔离:为什么你改了我还看不见? ### 隔离性与隔离级别 当数据库上有多个事务同时执行的时候,就可能出现**脏读(dirty read)**、不可重复读(non-repeatable read)、**幻读(phantom read)**的问题,为了解决这些问题,就有了“隔离级别” ......
事务 03

[数据结构]Binary Indexed Trees(树状数组)

# Binary Indexed Trees(树状数组) ## 1.lowbit **lowbit(x)**是x的二进制表达式中最低位的1所对应的值。比如,6的二进制是110,所以lowbit(6)=2。 **lowbit(x) = x&(-x)** ## 2.定义,查询,修改(eg1) $a1,a ......
数据结构 数组 Indexed 结构 数据

Java 二维数组

# Java 二维数组 # 1.二维数组的定义 ## 二维数组即数组里面又存放了一个一维数组;Java 中一维数组的个数可以变化。 ## 动态定义: ## int\[]\[] arr = new int\[数组个数]\[]; ## int arr\[]\[] = new int\[数组个数]\[]; ......
数组 Java

Java基础-Day02

## Java基础-Day02 ## 运算符 - 算法运算符 ![](https://img2023.cnblogs.com/blog/2779111/202306/2779111-20230625172550208-2015687834.png) ​ - 赋值运算符 ![](https://img ......
基础 Java Day 02

【后端面经-Java】HashMap详解

[TOC](【后端面经-Java】HashMap详解) ## 1. HashMap的家族定位 接口`java.util.Map`有四个常用的实现类,如图是它们之间的类继承关系。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/ba13b32ddabc47bd9666 ......
端面 HashMap Java

IDEA中修改Java版本

> 1. pom文件 ![](https://img2023.cnblogs.com/blog/2051703/202306/2051703-20230625183130643-20262118.png) > 2. File Project Structure ![](https://img2023 ......
版本 IDEA Java

【问题记录】A child container failed during start module java.rmi does not "opens sun.rmi.transport" to unnamed module @1e236278

``` 子容器启动失败,spring容器没启动,tomcat也不能启动 不是servlet-api的scope问题 Dubbo的@Service注解注释掉就可以启动,怀疑是Dubbo版本问题(但不是) 百度module java.rmi does not "opens sun.rmi.transpo ......
module quot container rmi transport

事务超时异常:org.springframework.transaction.TransactionTimedOutException: Transaction timed out: deadline was Sun Jun 25 17:34:03 CST 2023

报错如下: 代码如下: Controller import com.zwh.service.impl.TimeOutService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotati ......

Java 反序列化之 XStream 反序列化

XStream 是一个简单的基于 Java 库,Java 对象序列化到 XML,反之亦然(即:可以轻易的将 Java 对象和 XML 文档相互转换)。如何使用 XStream 进行序列化和反序列化操作? ......
序列 XStream Java

Java多线程-Lesson02

一.Lamda表达式 λ是希腊字母表的第十一位字母,英文名是Lambda Lamda表达式的出现主要是为了避免匿名内部类过多的原因,它属于函数式编程的范畴 为什么要使用Lamda表达式? 避免匿名内部类定义过多 可以让你的代码看起来很简洁 去掉了没有意义的代码,只留下一堆核心逻辑 主要使用在创建的类 ......
线程 Lesson Java 02