单元java

java之Optional

ofNullable 使用静态方法 ofNullable() 创建一个即可空又可非空的 Optional 对象 String name = null; Optional<String> optOrNull = Optional.ofNullable(name); System.out.println ......
Optional java

【Java 并发】【十】【JUC数据结构】【八】ConcurrentHashMap原理

1 前言 上一节我们讲解了HashMap底层的实现,但是HashMap不是线程安全的,存在多个线程并发操作的线程安全的问题。今天我们就来看一下ConcurrentHashMap这个数据结构,并发安全版本的Map结构。 2 ConcurrentHashMap内部源码 2.1 内部属性 // 最大容量上 ......

c#快速入门~在java基础上,知道C#和JAVA 的不同即可

☺ 观看下文前提:如果你的主语言是java,现在想再学一门新语言C#,下文是在java基础上,对比和java的不同,快速上手C# C# 学习参考文档和开发工具 微软c#官方文档:https://learn.microsoft.com/zh-cn/dotnet/csharp/tour-of-cshar ......
基础 java JAVA

Java基础

一、注释 当项目复杂时,我们很难看懂代码逻辑,所以我需要再编写代码时添加注释以提醒自己或者别人。 注释不会被执行,是给写代码的人看的 书写注释是一个非常好的习惯。平时的编程过程中一定要注意规范 1.单行注释://...(双斜杠加内容) 2.多行注释:/**/(2个单斜杠中间加上2个星号) 3.文档注 ......
基础 Java

Java设计模式 —— 观察者模式

16 观察者模式 16.1 观察者模式概述 Observer Pattern: 定义对象之间的依赖关系(一对多),当一个对象的状态发生改变时,其关联的依赖对象均收到通知并自动更新。 观察者模式又称:发布-订阅模式,源-监听器模式 观察者模式结构图如下所示: 16.2 观察者模式实现 16.2.1 抽 ......
模式 观察者 设计模式 Java

java并发编程(2):Java多线程-java.util.concurrent高级工具

伴随着多核CPU的出现,也就意味着不同的线程能被不同的 CPU 核得到真正意义的并行执行。Java 是最先支持多线程的开发的语言之一,Java1 5提供了一个非常高效实用的多线程包:java util concurrent ......
java 线程 concurrent 工具 Java

java并发编程(1):Java多线程-基本线程类-基础知识复习笔记

多线程只有一个目的,那就是更好的利用cpu的资源,基本线程类指的是Thread类,Runnable接口,Callable接口,传统java多线程编程 需要注意的 线程安全 线程同步 线程通信 synchronized volatile ……一锅乱炖 ......
线程 基础知识 基础 笔记 知识

java反射机制原理剖析

没有反射也就没有框架,现有的框架都是以反射为基础。 Spring 中,最重要的概念就是 IOC 控制反转。而 IOC 的实现原理就是反射。通过反射来构造 Java Bean 的对象,调用其方法。反射就是在运行时才知道要操作的类是什么 ......
原理 机制 java

Java注解(批注)的基本原理

为什么要使用注解? 早期版本的Spring是通过XML文件的形式对整个框架进行配置的,一个缩减版的配置文件如下 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/bea ......
批注 注解 原理 Java

【Java 并发】【十】【JUC数据结构】【七】ConcurrentHashMap前置篇HashMap原理

1 前言 前几节我们分析了一些并发安全的数据结构,分别是CopyOnWrite系列的CopyOnWriteArrayList、BlockingQueue阻塞队列系列的LinkedBlockingQueue、ArrayBlockingQueue、DelayQueue。接下来我们要讲解一个很重要的并发安 ......

Python同Java及C++的不同之处

Python同Java及C++的不同之处1. C++、Java对变量的定义很严格 比如 int a = 0 python则直接定义 a=0 2. C++、Java代码结束时需要用 ;隔开 比如 int a =0; ,而python则不用 a=0 直接换行即可 3. C++、Java中的循环或者判断需 ......
Python Java

Java 异常处理:使用和思考

概念 异常处理的概念起源于早期的编程语言,如 LISP、PL/I 和 CLU。这些编程语言首次引入了异常处理机制,以便在程序执行过程中检测和处理错误情况。异常处理机制随后在 Ada、Modula-3、C++、Python、Java 等编程语言中得到了广泛采用和发展。在 Java 中,异常处理是提供一 ......
Java

Java5

使用for循环计算1-100的和,除了以3结尾的那些数 package dsfa; public class dgd { public static void main(String[] args) { // TODO Auto-generated method stub int i,sum=0; ......
Java5 Java

近万字总结:Java8 Stream流式处理指南

总结/朱季谦 在实际项目当中,若能熟练使用Java8 的Stream流特性进行开发,就比较容易写出简洁优雅的代码。目前市面上很多开源框架,如Mybatis- Plus、kafka Streams以及Flink流处理等,都有一个相似的地方,即用到Stream流特性,其写出的代码简洁而易懂,当然,若是在 ......
指南 Stream Java8 Java

从java到JavaScript(2):对比Java/Go/Swift/Rust看Dart

Dart与Java的一些直观区别GoGo作为一种简单的语言,非常适合构建网络应用程序,这是正确的,如果你不需要其他功能,如泛型。个人觉得Dart和Java JavaScript有很多共通之处,对于typescript,个人觉得dart替代性更好 ......
JavaScript Swift java Java Dart

从java到JavaScript(1),看Dart:对比Java/Go/Swift/Rust

动态类型语言不满足人民群众日益增长的性能需求,同时暴露了对类型过于宽松而造成的可维护性,可调试性下降。Dart作为新时代的语言,支持JIT与AOT的新人,个人觉得还是好好琢磨下,笔记可能是未来web王者 ......
JavaScript Swift java Dart Java

【Java 并发】【十】【JUC数据结构】【六】SynchronousQueue同步阻塞队列原理

1 前言 看过了LinkedBlockingQueue、ArrayBlockingQueue、DelayQueue等阻塞队列,这节我们又要看一个不一样的队列,SynchronousQueue同步阻塞队列。 2 SynchronousQueue是什么 SynchronousQueue的同步队列,使用的 ......

Cause: java.sql.SQLSyntaxErrorException: Unknown database 'java_test'

Cause: java.sql.SQLSyntaxErrorException: Unknown database 'java_test' 我的原因是库名写错了,这里要修改成自己数据库的名字,不能是表名或者其他。 ......

Java8 Stream

Java8 Stream 1 Stream概述 2 Stream的创建 3 Stream的使用 案例使用的员工类 3.1 遍历/匹配(foreach/find/match) 3.2 筛选(filter) 3.3 聚合(max/min/count) 3.4 映射(map/flatMap) 3.5 归约 ......
Stream Java8 Java

【Java 并发】【十】【JUC数据结构】【五】DelayQueue延迟阻塞队列原理

1 前言 前两节我们看了BlockingQueue阻塞队列的两个子类,LinkedBlockingQueue、ArrayBlockingQueue,它们都是使用了ReentrantLock、Condition的来实现的,在进行插入操作、拉取数据操作之前为了并发安全都需要进行加锁;然后插入时候在容量满 ......
数据结构 队列 DelayQueue 原理 结构

.NET Core MongoDB数据仓储和工作单元模式封装

前言 上一章我们把系统所需要的MongoDB集合设计好了,这一章我们的主要任务是使用.NET Core应用程序连接MongoDB并且封装MongoDB数据仓储和工作单元模式,因为本章内容涵盖的有点多关于仓储和工作单元的使用就放到下一章节中讲解了。仓储模式(Repository )带来的好处是一套代码 ......
单元 MongoDB 模式 数据 Core

几种常用的Java 算法

package jsh.mg.msg.service.msg.test;import java.util.Arrays;import static java.util.Arrays.binarySearch;/** * * 几种常用的Java 算法 */public class TestClass ......
算法 常用 Java

java -- 练习题

第一题 1.定义一个Person类,要求有姓名和年龄,并且符合JavaBean标准,定义Student类继承Person,定义测试类,创建Student对象,要求创建Student对象的同时,指定Student对象的姓名为"张三",只能指定姓名不许指定年龄 class Person { privat ......
练习题 java

JS引擎(2):Java平台上JavaScript引擎—Rhino/Nashorn概述

Rhino 是一种动态类型的、基于对象的脚本语言,它可以简单地访问各种 Java 类库。Nashorn是一种单层的纯编译型JavaScript实现。所有JavaScript代码在首次实际执行前都会被编译为Java字节码交由JVM执行。 ......
引擎 JavaScript Nashorn Rhino 平台

Java: switch lambda-like syntax

The switch expression has an additional lambda-like syntax and it can be used not only as a statement, but also as an expression that evaluates to a s ......
lambda-like switch lambda syntax Java

使用C#创建WPS EXCEL单元格内联图片的一些个人纪录

在WPS中单元格内插入图片会生成一个公式,该公式MS Excel中没有,通过录制宏的方式也无法得知具体的生成API,只会录制出硬编码的设置单元格的公式的代码 例如 通过解压缩单元格内嵌图片保存的xlsx文件,可以大概得知如下关系(重新压缩回去并且将扩展名改回xlsx是行不通的,我试了(╯‵□′)╯︵ ......
单元 纪录 图片 EXCEL 个人

Golang与Java全方位对比总结

本文针对Golang与Java的基础语法、结构体函数、异常处理、并发编程及垃圾回收、资源消耗等各方面的差异进行对比总结,有不准确、不到位的地方还请大家不吝赐教。 ......
全方位 Golang Java

leetcode56.合并区间-java

1 class Solution { 2 public int[][] merge(int[][] intervals) { 3 /* 4 思路:左区间排序,若intervals[i][0] >= intervals[i-1][1]; 则重叠 5 将重叠区间新建放入res数组里,没重叠则放入原数组 ......
区间 leetcode java 56

Java之Stream流

Stream 学习Stream流需要先了解什么事函数式接口,因为在Stream中的方法参数大都为函数式接口。 函数式接口 有且只有一个抽象方法的接口。函数式接口可以有多个非抽象方法; Java中内置函数式接口 内置函数式接口:由java官方定义的一些常用的函数式接口。 消费型接口(Consumer) ......
Stream Java

我的Java项目实战--校园餐饮商户外卖系统 01

开发笔记01 1.软件开发整体介绍 软件开发流程 角色分工 项目经理:对整个项目负责,任务分配、把控进度 产品经理:进行需求调研,输出需求调研文档、产品原型等 U设计师:根据产品原型输出界面效果图 架构师:项目整体架构设计、技术选型等 开发工程师:代码实现 测试工程师:编写测试用例,输出测试报告 运 ......
商户 实战 餐饮 项目 校园