自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 快速排序原理和代码

快速排序的原理排序算法的思想非常简单,在待排序的数列中,我们首先要找一个数字作为基准数(这只是个专用名词)。为了方便,我们一般选择第 1 个数字作为基准数(其实选择第几个并没有关系)。接下来我们需要把这个待排序的数列中小于基准数的元素移动到待排序的数列的左边,把大于基准数的元素移动到待排序的数列的右边。这时,左右两个分区的元素就相对有序了;接着把两个分区的元素分别按照上面两种方法继续对每个分区找出基准数,然后移动,直到各个分区只有一个数时为止。...

2021-03-14 21:24:15 95

原创 冒泡排序算法详解

冒泡排序:在待排序的元素列中每次对比相邻两个元素的值,大的元素被交换到后面,第一次排序之后在元素列中最大的元素就位于元素列的末尾,然后再次从头开始重复之前的对比,每次排序的元素列长度-1,直至排序完成。图示分析:下面通过图示的方法来解析冒泡排序的一次排序对比,选出元素列中的最大值冒泡排序说的直白一点,其实就是循环这个元素列,对比元素列中的第一个值和第二个值的大小,如果第一个值大于第二个值,那么就交换值,然后再次对比第二个值和第三个值的大小,一次类推,直至到元素列尾,完成一趟冒泡排序。**代码**

2021-03-14 21:22:08 241

原创 String类的特点

String类的特点1.String类对象的相等判断使用equals() 方法完成,“==”实现的是地址数值的比较。2.字符串内容一旦声明则不可改变,String类对象内容的改变是依靠引用关系的变更实现的。3.String类有两种实例化方式,使用直接赋值可以不产生垃圾空间,并且可以自动入池,不要使用构造方法完成。String对象的创建创建字符串有两种方式:两种内存区域(字符串池,堆)1.” ” 引号创建的字符串即直接赋值在字符串池中2.new,new创建字符串时首先查看池中是否有相同值的字符

2021-03-14 21:15:57 181

原创 ==和equals的区别

==和equals的区别== 比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指相同一个对象。比较的是真正意义上的指针操作。1、比较的是操作符两端的操作数是否是同一个对象。2、两边的操作数必须是同一类型的(可以是父子类之间)才能编译通过。3、比较的是地址,如果是具体的阿拉伯数字的比较,值相等则为true,如:int a=10 与 long b=10L 与 double c=10.0都是相同的(为true),因为他们都指向地址为10的堆。equals:

2021-03-14 21:12:42 70

原创 一个Java程序的执行过程

一个Java程序的执行过程**1.编写:**是指在 Java 开发环境中进行程序代码的输入,最终形成后缀名为 .java 的 Java 源文件。**2.编译:**是指使用 Java 编译器对源文件进行错误排査的过程,编译后将生成后缀名为 .class 的字节码文件,不像C语言那样生成可执行文件。**3.运行:**是指使用 Java 解释器将字节码文件翻译成机器代码,执行并显示结果。字节码文件是一种和任何具体机器环境及操作系统环境无关的中间代码。它是一种二进制文件,是 Java 源文件由 Java

2021-03-14 21:06:50 88

原创 java中被final修饰的常用量

java.lang包中包装类:Boolean,Character,Short,Integer,Long,Float,Double,Byte,Void(八大类型的包装类型加一个void)字符串类:String,StringBuilder,StringBuffer系统类:Math,StrictMath其他:Character,UnicodeBlock,ProcessBuilder,StackTraceElement...

2021-03-14 21:03:50 67

转载 为什么float类型4字节比long类型8字节的范围大

float比long类型的数据范围大。float:4个字节long:8个字节为什么float的4个字节比long类型的8个字节的范围大?因为整数与小数的底层存储有点不同。相同点:它们都是用二进制存储的不同点:小数先转成二进制,然后处理,然后存储。符号位 其中最左边的为符号位,0为正,1为负。指数 接下来的E是指数,一共8位,也用二进制来表示。IEEE规定,在float类型中,用来计算指数的偏移量为127(即存贮指数时要在原基础上+127)。尾数 最后的F是小数部分,尾数正是由这23位的小

2021-03-14 21:01:47 601

原创 String为什么要设置成不可改变的量

String 是 Java 中不可变的类,所以一旦被实例化就无法修改。不可变类的实例一旦创建,其成员变量的值就不能被修改。本文总结下 String 类设计成不可变的原因及好处,以及 String 类是如何设计成不可变的。String 类设计成不可变的原因及好处?其实好处就是原因,String 设计成不可变,主要是从性能和安全两方面考虑。1、常量池的需要这个方面很好理解,Java 中的字符串常量池的存在就是为了性能优化。字符串常量池(String pool)是 Java 堆内存中一个特殊的存储区域,

2021-03-14 20:59:36 370

转载 为什么在Integer中 a = 127,b=127,时ab为true。而integer的 c = 128,d = 128,时为false

在基础类int的对象类中创建两对象public static void main(String[] args) {Integer a = 128;Integer b = 128;boolean c = (a == b);System.out.println(c);}最后输出结果为false,public static void main(String[] args) {Integer a = 128;Integer b = 128;boolean c = (a.equ

2021-03-14 20:54:09 345

原创 二分法的原理和代码

二分法:1、二分法查找算法是建立在排序的基础之上的,即没有排序的数据是无法查找的;2、二分法查找的效率高于"一个挨着一个"的这种查找方式;```javascriptpublic static void main(String[] args) { int[] arr ={0,5,9,10,20,60,70,80,90,100}; // 找出这个数组中 9 所在的下标 // 调用方法 // int index = Arrays.binarySearch(arr,9)

2021-03-14 20:44:55 900

原创 Java语言为什么可以跨平台

因为java程序编译之后的代码不是能被硬件系统直接运行的代码,而是一种"中间码"–字节码,然后不同硬件平台安装不同java虚拟机(JVM)java程序不能直接在电脑运行,是在虚拟机运行,每个虚拟机平台都有自己的JVM,所以java可以跨平台。...

2020-12-24 12:02:22 188

原创 2020-12-22

JVM、JRE和JDK的关系三者的关系是嵌套关系 JDK>JRE>JVM。JVMJava Virtual Machine是Java虚拟机,Java程序需要运行在虚拟机上,不同的平台有自己的虚拟机,因此Java语言可以实现跨平台。JREJava Runtime Environment包括Java虚拟机和Java程序所需的核心类库等。核心类库主要是java.lang包:包含了运行Java程序必不可少的系统类,如基本数据类型、基本数学函数、字符串处理、线程、异常处理类等,系统缺省加载这个包

2020-12-22 19:55:45 60

原创 16日博客

Jquery 层级选择器 有嵌套关系用层级选择器 ancestor descendant :在给定的祖先元素下匹配所有的后代元素 parent > child :在给定的父元素下匹配所有的子元素 prev + next :匹配所有紧接在 prev 元素后的 next 元素 prev ~ siblings :匹配 prev 元素之后的所有 siblings 元素 基础选择器 没有嵌套关...

2020-12-17 10:12:53 85

原创 函数

funtion函数函数 也是一种数据类型 引用类型 Fuction 在js里面函数是一等公民作用:函数是由事件驱动或者主动调用时可重复执行的代码块//函数基本写法/** * funtion * name 函数名(英文) 函数名可以省略 如果函数名省略了这个函数就叫匿名函数 * param 传递给函数的参数名称 最多有255个参数 * {} 函数体 函数执行的内容 */function name([param[, param[, ... param]]]) { statements

2020-12-13 23:31:17 63

原创 for循环

for循环for 循环 批量处理数据for(初始化条件;终止(退出)条件;最终条件)++自增运算符 每次会自动加1for(var i=0;i<10;i++){ //执行语句 console.log(i) //0 1}break 直接跳出当前循环 并不在进行下次循环continue 直接跳出当前循环 并进行下次循环var ary1 = [1, 2, 3, 4, 5, 6, 17, 19, 30];// 1. 计算除了17之外其他数的和// 2. 计算 17之前所有数

2020-12-13 23:30:47 87

原创 引用类型

引用类型数组的定义 中括号表示数组,每一项以逗号分割// 字面量定义[] 空数组var students = ['学生1','学生2','学生3' ] var goods =['牙膏','牙刷','苹果','洗衣机']//数组[数字] 表示数组的第几项 js的计数是从0开始算的 var students = new Array() students[0] ='学生1' students[1] ='学生2'对象 是以大括号{}表示 对象里面放的是键值对(key:value )每一

2020-12-13 23:30:27 109

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除