- 博客(35)
- 收藏
- 关注
原创 Java的运算符——取整、取绝对值、取余数、求模
向下取整:Math.floor(3.5)=3四舍五入取整:Math.round(3.5)=4向上取整:Math.ceil(3.1)=4取绝对值:Math.abs(-3.5)=3.5取余数:6%4=2求模运算:6/4=1Math.rint() :返回最接近参数的整数,如果有两个数同时接近,返回偶数的那一个...
2019-03-15 15:42:55 7229
原创 各类锁(互斥锁,自旋锁,读写锁,乐观锁,悲观锁,死锁)
互斥锁:当有一个线程要访问共享资源(临界资源)之前会对线程访问的这段代码(临界区)进行加锁。如果在加锁之后没释放锁之前其他线程要对临界资源进行访问,则这些线程会被阻塞睡眠,直到解锁,如果解锁时有一个或者多个线程阻塞,那么这些锁上的线程就会变成就绪状态,然后第一个变为就绪状态的线程就会获取资源的使用权,并且再次加锁,其他线程继续阻塞等待。读写锁:也叫做共享互斥锁,读模式共享,写模式互斥。有点像...
2019-03-01 16:16:41 6410 2
原创 meavn的下载及安装
meavn的下载及安装大家可以去我的网盘直接拿去用,我的是目前最新版的3.6.0https://pan.baidu.com/s/1NjE8PWafZPSxxVjHCsWxDA也可以去官网下载自己需要的版本http://maven.apache.org/download.cgi下载好之后,解压到一个文件夹中即可。环境变量的配置首先进入到我们的环境变量。1.点击环境变量2.在系...
2019-02-27 20:47:45 1102
原创 jdk的安装以及环境变量的配置
jdk的下载及安装可以去我的百度网盘中直接去拿。网盘中有jdk 1.8和jdk 11,应该可以满足我们大多数人的需求https://pan.baidu.com/s/1g829kmmg2jVZR0YS6DxW2w大家如果需要其他版本的,可以到官网下载我们需要的jdk版本。http://www.oracle.com/technetwork/java/index.htmljdk下载好之后,教大...
2019-02-27 20:21:31 415
原创 JDBC连接数据库
JDBC简介JDBC是由java编程语言编写的类及接口组成,同时它为程序开发人员提供了一组用于实现对数据库访问的JDBC API,并支持SQL语言。利用JDBC可以将JAVA代码连接到oracle、DB2、SQLServer、MYSQL等数据库,从而实现对数据库中的数据操作的目的。JDBC全称为:Java Data Base Connectivity (java数据库连接),可以为多种数据库提...
2019-02-23 12:08:12 317
原创 TCP/IP、UDP
OSI 参考模型OSI分层OSI各层作用TCP/IP协议栈由于OSI模型比较复杂,所以并没有的到广泛应用而TCP/IP(transfer control protocol/internet protocol)因其开放性和易用性得到了广泛应用。TCP/IP协议栈也称为了互联网的主流协议TCP/IP模型各个层次应对不同的协议,TCP/IP协议栈是数据通信协议的集合,包含了许多协议。其...
2019-02-22 15:35:04 366
原创 Java基础之——IO流(Properties、序列化与反序列化)
Properties介绍Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。 特点: 1.Hashtable的子类,map集合中的方法都可以使用。 2.该集合没有泛型。键和值都是字符串。 3.他时一个可以持久化的属性集。键值可以存储到集合中,也可以存储到持久化设备中。键值的来源也可以...
2019-02-21 16:18:16 605
原创 Java基础之——IO流(字符流、转换流、缓冲流)
字符流原理Reader是所有字符输入流的父类,而Writer是所有字符输出流的父类,字符流是以字符(char)为单位读写数据的,一次处理一个unicode,字符流都是高级流,其底层都是依靠字节流读写数据。 Reader的常用方法 writer的常用方法 转换流字符编码计算机中储存的信息都是用二进制数表示的,而我们在屏幕上看到的数字、英文、标点符号、汉字等字符是二...
2019-02-21 14:09:57 668
原创 Java基础之——IO流(字节流)
字节流字节输出流OutputStreamOutputStream此抽象类,是表示输出字节流的所有类的超类。操作的数据都是字节,定义了输出字节流的基本共性功能法方法。FileOutputStream类OutputStream有很多子类,其中FileOutputStream可用来写入数据到文件中。FileOutputStream类是文件输出流,是用于将数据写入File的输出流。使用Fi...
2019-02-20 18:01:57 144
原创 Java基础——反射
反射,什么是反射Java的反射机制是指在运行状态中,对于任意一个类,都能够知道这个类所属的属性和方法,都能够调用他的属性和方法。这种动态获取的信息或者动态调用的方法的功能,我们称之为Java的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象。Class类通过查阅API可以得知,Cla...
2019-02-20 14:16:08 127
原创 多线程之 线程安全 、锁 以及 线程同步
什么是线程安全所谓线程安全是指我们要确保在多条线程访问的时候,程序能够按照我们预期的行为去执行。 我们通过一个案例去模拟一下线程安全的问题 假设开设多个窗口卖票,窗口我们用线程来模拟。public class Demo_2 { public static void main(String[] args) { //创建票对象 Ticket ticket = new Ticket...
2019-02-19 21:47:46 348
转载 由浅入深理解Java线程池及线程池的如何使用
原文链接:https://www.cnblogs.com/superfj/p/7544971.html前言多线程的异步执行方式,虽然能够最大限度发挥多核计算机的计算能力,但是如果不加控制,反而会对系统造成负担。线程本身也要占用内存空间,大量的线程会占用内存资源并且可能会导致Out of Memory。即便没有这样的情况,大量的线程回收也会给GC带来很大的压力。为了避免重复的创建线程,线程池的...
2019-02-19 15:44:05 403
原创 CPU、内存以及指令简单了解
CPU的组成CPU本身由三个主要的子单元组成: a)算术/逻辑单元 ALU: 它执行算术和布尔逻辑运算b) 控制单元 CU : 它控制着指令的处理和CPU内数据从一个部分到另一部分的移动。c) 接口单元 : 它在CPU和其他硬件部件之间传送程序指令和数据。寄存器a)一个寄存器就是CPU里的一个永久的存储单元,他的用途是特定的,明确的。针对存储,操作或简单计算,寄存器可以临时存放一个...
2019-02-19 12:05:30 1690
原创 Thread.currentThread()方法、进程、线程、多线程相关总结(二)
Thread.currentThread方法Thread的静态方法currentThread方法可以用于获取运行当前代码片段的线程
2019-02-16 16:41:12 18972 2
原创 进程、线程、多线程相关总结(一)
基础知识什么是进程进程 所谓进程,就是一块包含了某些资源的内存区域,操作系统利用进程把他的工作划分为一些功能单元。进程中包含一个或多个线程,用于自己私有的虚拟地址空间。该空间仅能被他所包含的线程访问。当操作系统创建一个主线程后,该进程会自动申请一个名为主线程或首要线程的线程。 简单来说,进程就是指正在运行的程序。也就是说,当一个程序进入内存运行,就变成了一个进程。什么是线程线程...
2019-02-16 16:39:22 1358
原创 Java中"=="和"equals"的区别
“==”和“equals”有什么区别呢总的来说: 1)对于==,比较的是值是否相等 如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等; 如果作用于引用类型的变量,则比较的是所指向的对象的地址 2)对于equals方法,注意:equals方法不能作用于基本数据类型的变量,equals 继承Object类,比较的是是否是同一个对象如果...
2019-02-14 18:52:06 499
原创 Java中的正则表达式
正则表达式正则表达式是一种强大而灵活的文本处理工具,是使用一系列预定义特殊字符来描述一个字符串的格式规则,然后使用该格式规则匹配某个字符串是否符合格式要求。正则表达式基本语法字符符号说明B指定字符B\xhh十六进制为oxhh的字符\t制表符Tab\n换行符\r回车\f换页\e转义(Escape) 字符类符...
2019-02-14 17:36:06 226
原创 探索Java中String、StringBuilder、StringBuffer三者的区别
Java中String、StringBuffer、StringBuilder到底有什么区别呢?首先我们必须知道String:String是不可改变的字符串常量。StringBuilder:StringBuilder是字符串变量,是可变的。属于非线程安全的操作。StringBuffer:StringBuffer是字符串变量,是可变的。属于安全的线程操作.执行速度上:StringBuilde...
2019-02-13 12:03:10 195
原创 List、Set、Map的特点及区别详解(Java基础)
集合List 、Set、Map的区别与联系一、结构特点List、Set是存储单列的数据集合,都继承与Collection接口。Map是存储键值对这样的双列数据的集合,是个独立接口。List中存储的数据是有序的,可以是重复的。Set中存储的数据是无序的,且不允许重复。Map中存储的数据是无序的,他的键是不允许重复的,值是可以重复的。二、相关的实现类List的接口有三个实现类。 ...
2019-02-11 20:32:14 14333 1
原创 Java运行时,数据都保存到了什么位置?
程序运行时,对象是怎样进行放置安排的呢?特别是内存是怎么样进行分配的?1)寄存器: 这是最快的存储区,因为它位于不同于其他存储区的地方:处理器内部。但是寄存器数 量极其有限,所以寄存器根据需求进行分配。我们不能直接控制,也不能在程序中感觉 到寄存器存在的任何迹象。2)堆栈: 位于通用RAM(随机访问存储器)中,但是通过堆栈指针 可以从处理器那里获...
2019-02-10 12:40:32 1366
原创 面向对象
面向对象方式:面向对象方式 面向对象方式使得程序员使得程序员不会受限于任何特定类型的问题。我们将问题空间中的元素及其在解空间中的表示称为“对象”。 这种思想的实质是:程序可以通过添加新类型的对象使自身适用于某个特定问题。 相比之前我们使用的语言,这是一种更灵活和更强有力的语言抽象。因此OOP允许根据问题来描述问题,而不是根据运行解决方案的计算机来描述问题。 ...
2019-01-31 18:04:46 91
原创 线性表之栈(数据结构day05)
栈什么是栈 栈,stack,是限定在表的一端进行插入和删除预算的线性表 通常,将删除与插入的一端称为栈顶,每次退栈(即删除一个元素)的必是最后一个进栈的元素,而第一个进栈的元素必然是最后一个退栈的。即在栈中,元素具有先进后出,后进先出的特点,故把栈也称为先进后出的线性表,LIFO表(Last in first out).栈的顺序存...
2019-01-26 19:58:31 166
转载 C语言链表各类操作详解
1.单链表的读取获取链表第i个数据的算法思路:声明一个指针p指向链表的第一个结点,初始化j从1开始;当j< i 时,遍历链表,让p的指针向后移动,不断指向下一结点,j累加1;若到链表末尾p为空,说明第i个元素不存在;否则查找成功,返回结点p的数据。/*初始条件:顺序线性表L已存在,1≤i≤ListLength(L)*//*操作结果: 用e返回L中第i个数据元素的值*/St...
2019-01-23 23:17:09 6783
原创 数据结构之线性表(数据结构day04)
线性表的定义和基本运算线性表的逻辑定义线性表,Linear_List是最简单和最常用的一种数据结构。线性表是由n个数据元素(结点)a1,a2,…,an组成的有限序列。类比数学中的数列概念。其中我们规定数组元素的个数n为该线性表的长度,size。当n为零时,称为空表。非空的线性表通常记为:(a1,a2,a3,…,an),其中ai(1<=i<=n)表示线性表的其中一个结点。...
2019-01-23 22:50:41 282
转载 理解有参构造器和无参构造器的作用
一、概念java中构造方法指的是:与类名相同,无返回类型的方法,参数可以为空,也可以带参数。比如一个 Dao 类,private Dao(){}这个就是无参数的构造方法。private Dao(String name){}这个就是带参数的构造方法。作用:用来初始化 java 类,提供类的初始化和实例化,以便调用。二、作用new一个对象的时候要用到构造函数,例如Hello hello...
2019-01-23 19:51:35 1343
原创 数据结构的认知(数据结构day03)
If you give someone a program,you will frustrate them for a day;if you teach them how to program,you will frustrate them for a lifetime数据结构数据结构是相互之间存在一种或多种特定关系的数据元素的集合。是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间...
2019-01-23 17:30:02 272
原创 计算机体系的认知(数据结构day2)
什么是IT?作为今后的IT人员,对 IT 没有一个明确的认识,实属有点说不过去。所谓IT是指信息技术(Information Technology),也称为信息和通信技术(Information and Communications Technology,ICT),是主要用于管理和处理信息所采用的各种技术总称,主要是应用 计算器科学 和通信技术来设计,开发,安装和部署信息系统及应用软件。冯·诺...
2019-01-21 22:49:43 457
原创 斐波那契数列(数据结构day01)
斐波那契数列斐波那契数列,又称为黄金分割数列( 当n趋于无穷大时,前一项与后一项的比值越来越趋于黄金分割比0.618 ),因数学家列昂纳多·斐波那契(Leonardoda Fibonacci),以兔子繁殖为例引入,故又称为“兔子数列”,指的是这样一个数列:1,1,2,3,5,8,13,21,34… … 这个数列从第三项开始,每一项都等于前两项数列之和,即F(n)=F(n-1)+F(n-2)。斐...
2019-01-20 19:37:10 653
原创 leetcode解题之 27. Remove Element Java版
27. Remove ElementGiven an array nums and a value val, remove all instances of that value in-place and return the new length.Do not allocate extra space for another array, you must do this by modify...
2019-01-04 23:55:35 229
原创 leetcode解题之 26. Remove Duplicates from Sorted Array Java版
Remove Duplicates from Sorted ArrayGiven a sorted array nums, remove the duplicates in-place such that each element appear only once and return the new length.Do not allocate extra space for anoth...
2019-01-04 23:37:13 245
原创 leetcode解题之 18. 4Sum Java版
4SumGiven an array nums of n integers and an integer target, are there elements a, b, c, and d in nums such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum o...
2019-01-04 23:21:06 150
原创 leetcode解题之 16. 3Sum Closest Java版
16. 3Sum ClosestGiven an array nums of n integers and an integer target, find three integers in nums such that the sum is closest to target. Return the sum of the three integers. You may assume that ...
2019-01-03 19:35:53 241
原创 leetcode解题之 15. 3Sum Java版
3SumGiven an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note:The solution set must not c...
2019-01-02 22:18:26 96
原创 LeetCode 11 Container With Most Water(最大水容器)
标题SummaryWe have to maximize the Area that can be formed between the vertical lines using the shorter line as length and the distance between the lines as the width of the rectangle forming the area....
2019-01-01 20:45:49 126
原创 JAVA实现跳台阶问题(《剑指offer》)
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
2018-11-27 21:42:13 277
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人