[第十二届蓝桥杯/java/算法]B——空间
??个人介绍:大二软件生,现学JAVA、Linux、MySQL、算法 ?博客主页: 渡过晚枫 渡过晚枫 ?系列专栏: [编程神域 C语言] , [java/初学者] , [蓝桥杯] ?阶段目标:备战2023蓝桥杯java个人赛 ?不能逃避,不能逃避,不能逃避,去成为更好的自己!? 一、?题目描述: 小蓝准备用256MB的内存空间开一个数组,数组的每个元素都是32位二进制数, 如果不考虑程序占用的…
??个人介绍:大二软件生,现学JAVA、Linux、MySQL、算法 ?博客主页: 渡过晚枫 渡过晚枫 ?系列专栏: [编程神域 C语言] , [java/初学者] , [蓝桥杯] ?阶段目标:备战2023蓝桥杯java个人赛 ?不能逃避,不能逃避,不能逃避,去成为更好的自己!? 一、?题目描述: 小蓝准备用256MB的内存空间开一个数组,数组的每个元素都是32位二进制数, 如果不考虑程序占用的…
hash表在java中还是比较常见的,它通常用于容器类中,用于提高插入和查找操作,如HashMap,HashTable。 那hash码又是怎么得到的呢?下面是Object中的hashCode()方法: public native int hashCode(); 这是一个本地方法,具体的实现在不同的环境下可能不同,获取的hash码也不一定相同,通常都与对象的地址有关。 在很多时候我们获取哈希值都不会…
在我们编写多线程程序的时候,经常会因为线程安全问题导致出现各种各样的bug,这里我们总结一些线程安全的原因和大致的解决思路 目录 线程安全的问题 1.操作系统的抢占执行 2.多个线程修改同一个变量 3.操作不是原子性的 4.内存可见性 5.指令重排序 线程安全的解决方法 3.操作不是原子性的 4.内存可见性 5.指令重排序问题 线程安全的问题 1.操作系统的抢占执行 这个问题时我们编写多线程代码时…
如果我有以下代码: public OutputStream test(boolean condition) throws FileNotFoundException { return condition ? null : new FileOutputStream("test.txt"); } Eclipse在新的FileOutputStream(“ test.txt”)下放置了黄色花体,并向我显示…
背景:今天去CVTE面试,面试中出现了这道题目,不论结果如何,先学会这一道简单但是我还不会的题。 题目:给定一个整型数组,当数组中两个数的和最大时,求这两个数的下标; 题目解释:我的理解:找出数组中最大的两个数的下标; 思路: 1、定义一个数组arr[],数组的长度为你要找前几个最大的数,例如:本题目就是最大数和第二最大数,所以数组长度为2; 2、先写一个循环,循环的次数为数组arr[]的长度; …
先放目录结构 Operation类中封装了a,b两个运算数,以及得到运算结果的方法 package jisuanqi; public class Operation { private double a; private double b; public double getA() { return a; } public void setA(double a) { this.a = a; } p…
一、执行流程图 在上一节 RxJava2线程切换源码_subscribeOn 的示例代码中,我们是在 ObservableOnSubscribe#subscribe 中去执行 getBitampFormServer 方法去加载一个 Bitmap 对象,并且也分析了发射器在子线程中发射事件的原理。下面分析的是当成功获取到这个 bitmap 之后如何让 observer 在主线程去接收然后设置给 mI…
JVM内存总体分为了4个部分, 包括 stack segment 、heap segment、code segment 、data segment 。 其中我们程序中用关键字new出来的东西都是存放在heap segment(堆); 程序中的局部变量存放在stack segment(栈),这些局部变量是在具体方法执行结束之后,系统自动释放内存资源(而heap segment中的资源需要java垃…
不管是JAVA,还是.NET。我们常常会看到空异常(NullPointerException)。这种异常都是在运行的过程中出现。往往是变量是一个null值。但是你引用这个变量的后继字段或是方法。所以我们代码里面常常会出现if (变量!=null)的相关操作。 如果你是一个.NET开发人员的话,那么你一定知道.NET的可以为空的数据类型。同样子java8引入了一个Optional类型,目地是为了决解…
1、为什么要用NIO?: NIO是JDK1.4加入的新包,NIO的创建目的是为了让JAVA程序员可以实现高速I/O而无需编写自定义的本机代码。 NIO将最耗时的I/O操作(既填充和提取缓冲区)转移回操作系统。因而可以极大的提高速度 缓冲区: 缓冲区的类型: 缓冲区的内部细节: 代码示例: package com.lemon; import java.nio.ByteBuffer; public c…