Java基础--循环结构

循环结构 while 循环 while是最基本得循环,它的结构为: while(布尔表达式){ //循环内容 } 只要布尔表达式为true,循环就会一直执行下去 public class WhileDemo01 { public static void main(String[] args) { / ... »

ArrayList这篇就够了

提起ArrayList,相信很多小伙伴都用过,而且还不少用。但在几年之前,我在一场面试中,面试官要求说出ArrayList的扩容机制。很显然,那个时候的我并没有关注这些,从而错过了一次机会。不过好在我还算比较喜欢搞事情的,所以今天这篇文章也算是填坑吧。 看完这边文章你将了解到: ArrayList底 ... »

Java多线程

多线程基础 一、创建线程 仅仅只有new Thread这种方法创建线程 Java中无法销毁一个线程,只能表现一个线程的状态。 通过thread.start()启动线程(仅仅只是通知线程启动) thread.join()用于控制线程必须执行完成,调整优先级并不能保证优先级高的线程先执行。 1、继承Th ... »

封装继承

封装、继承 第一节:方法的参数传递、返回值 Java语言在给被调用方法的参数赋值时,采用传值的方式: 基本类型数据传递的是该数据的值本身。 引用类型数据传递的也是这个变量的值本身,即对象的地址(引用),而非对象本身。 1.1 基本数据类型传递 //类 public class PassValue{ ... »

HashMap详解

HashMap源码解析(以jdk1.8为例) 简介 put方法 初始化 && 扩容 扩容的具体过程 1.7 和 1.8 jdk中HashMap的对比 链表死循环问题 简介 put方法 初始化 && 扩容 扩容的具体过程 扩容的具体过程 链表死循环问题 HashMap源码解析(以jdk1.8为例) H ... »

从JVM底层原理分析数值交换那些事

基础数据类型交换 这个话题,需要从最最基础的一道题目说起,看题目:以下代码a和b的值会交换么: public static void main(String[] args) { int a = 1, b = 2; swapInt(a, b); System.out.println("a=" + a ... »

||运算你真的了解吗?

或运算介绍 或运算:只要有一个条件为true,即为true。 通过如上逻辑关系图,还有另外一层隐含的意思: 如果A条件是true,B条件不执行! 如果A条件是false,B条件要执行! 下面我们来看一个案例:如果A条件是true,B条件不执行! /** * @author :jiaolian * @ ... »

ArrayList的简单实现

class AList<E>{ //属性:数组和实际元素个数 private Object[] data; private int size; //构造函数:有参、无参 public AList(int x){ if(x<0) System.out.println("集合初始化异常,不正常的初始值" ... »

Java 集合学习笔记

Java集合自学学习笔记,内容主要包含:Collection接口及其子接口 List、Set,Iterator 迭代器接口,Map接口核Collections 工具类。 ... »

equals和hashCode

equals和hashCode equals() 为什么重写equals()方法 基本数据类型用 == 比较数值是否相等 引用数据类型用 == 比较的是内存中的地址,所以引用数据类型建议用 equals() 比较内容, 但是如果引用数据类型内部不重写Object的 equals() 方法,调用equ ... »

java的单例模式小知识点

单例模式 目的 为了让一个类有且仅有一个实例 优点 只允许一个,节省空间 不用频繁创建删除,提高性能 缺点 不容易扩展 长期不使用会被系统当作垃圾回收,造成系统状态的丢失 实现 要点 防止外界随意的创建对象=》一个私有的构造函数 保证只有一个实例 =》在私有静态属性中进行声明(饿汉创建,懒汉声明) ... »

Java开发工程师最新面试题库系列——Web部分(附答案)

WEB 如果你有更好的想法请在评论区留下您的答案,一起交流讨论 http和https有什么区别? 答:http是超文本传输协议,默认端口是80。https是安全的默认端口是443;http是明文传输,存在安全隐患,Https在Http的基础上增加了SSL/TLS协议,需要依靠整数来验证服务器身份,并 ... »

关于泛型

泛型 思考 会不会报错?在多少行?怎么修改? import javax.swing.*; import java.util.ArrayList; import java.util.List; public class Test { public static void main(String[] a ... »

集合排序

集合排序 对Int型进行排序 List<Integer> list= new arrayList<>(); list.add(3); list.add(1); list.add(56); list.add(21); Collections.sort(list); System.out.println ... »

Java开发工程师最新面试题库系列——Java基础部分

JAVA基础 面向对象有哪些特征? 答:继承、封装、多态 JDK与JRE的区别是什么? 答:JDK是java开发时所需环境,它包含了Java开发时需要用到的API,JRE是Java的运行时环境,JDK包含了JRE,他们是包含关系 Java有哪几种基本数据类型? 答:8种,分别是int、byte、sh ... »

hashMap的四种遍历方式

hashMap的四种遍历方式 使用entrySet返回包含entry的Set集合再遍历 Map<String,String> map=new HashMap<>(); map.put("1","stu01"); map.put("2","stu02"); Set<Entry<String,Strin ... »

Java序列化,看这篇就够了

1.什么是序列化 Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: **序列化:**对象序列化的最主要的用处就是在传递和保存对象的时候,保证对象的完整性和可传递性。序列化是把对象转换成有序字节流,以便在网络上传输或者保存在本地文件中。核 ... »