Java
文章平均质量分 67
timekeeper_guo
这个作者很懒,什么都没留下…
展开
-
switch case,case的值
最近在工作中又学到了一点,switch case() 括号中只能是常量,即使是加了final修饰的常变量也不行如果判断条件中含有变量,用if else但是switch扩展性较好,自己看情况斟酌效率问题:当分支情况较多时(超过三个,之前在别人博客看到的,我没验证,对不起,我没有钻研精神),switch效率比if要高下面来详细描述switch与ifelse的区别:switch…case与if…else的根本区别在于,switch…case会生成一个跳转表来指示实际的case分支的地址,而这个跳转表的索原创 2020-11-08 20:35:13 · 590 阅读 · 0 评论 -
深入分析Java ClassLoader原理
转载来源一、什么是ClassLoader?大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果另外一个文件不存在的,则会引发...转载 2019-03-18 17:15:06 · 169 阅读 · 0 评论 -
Java中间变量缓存机制
今天看到了《程序员面试宝典》中的一个小例子,自以为很简单的自增运算,没想到算错了public class Test { public static void main(String[] args) { int j = 0; for(int i = 0; i < 100; i++) { j = j++; } ...原创 2019-03-18 22:17:03 · 322 阅读 · 0 评论 -
Java初学者应该搞懂的问题
对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。内容均来自于CSDN的经典老贴。 问题一:我声明了什么! String s = &amp;amp;quot;Hello world!&amp;amp;quot;; 许多人都做过这样的事...转载 2018-12-18 22:48:55 · 166 阅读 · 0 评论 -
运算符的优先级别
从一级到十六级,一级表示优先级别最高—— . ()—— ++ - -—— new—— *&nbs...原创 2019-03-31 17:14:10 · 1454 阅读 · 0 评论 -
Java 内存泄露详解(原因、例子及解决)
Java的一个重要特性就是通过垃圾收集器(GC)自动管理内存的回收,而不需要程序员自己来释放内存。理论上Java中所有不会再被利用的对象所占用的内存,都可以被GC回收,但是Java也存在内存泄露,但它的表现与C++不同。JAVA 中的内存管理 要了解Java中的内存泄露,首先就得知道Java中的内存是如何管理的。在Java程序中,我们通常使用new为对象分配内存,而这些内存空间都在堆(He...转载 2019-04-03 18:04:01 · 357 阅读 · 0 评论 -
Java获取字符串中每个字母出现的次数
给定字符串"ni…usazvcnbccnosewa"获取字符串中每个字母出现的次数,格式a(2)b(0)c(2)思路:能存储映射关系的容器有数组和map集合(set虽然保证了唯一性,但是不能存储映射关系)关系一方不存在有序编号,使用map,还可以保证唯一性的一方具备着顺序abc使用TreeSet集合最终存储的应该是字母和次数对应关系1.先将字符串变成字符数组2.遍历字符数组,用...原创 2019-04-13 21:23:01 · 5315 阅读 · 1 评论 -
正则表达式中各种字符含义
正则表达式全部符号解释字符描述\将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,’n’ 匹配字符 “n”。’\n’ 匹配一个换行符。序列 ‘\\’ 匹配 “\” 而 “\(” 则匹配 “(”。^匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 ‘\n’ 或 ‘\r’ 之后的位置。...原创 2019-05-09 11:01:12 · 558 阅读 · 0 评论 -
Java中普通代码块,构造代码块,静态代码块区别及代码示例
执行顺序:(优先级从高到低)静态代码块>main方法>构造代码块>构造方法其中静态代码块只执行一次。构造代码块在每次创建对象是都会执行。1 普通代码块//普通代码块:在方法或语句中出现的{}就称为普通代码块。普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定--“先出现先执行”public class CodeBlock01{ public stati...转载 2019-05-24 16:51:33 · 261 阅读 · 0 评论 -
Java多线程,真的能提高效率吗
JAVA多线程,真的能提高效率吗 举个栗子比如挖一个隧道,有2种开工方法1、只在山的一头挖,直至挖到山的另一头,从而打通隧道,这可以看成是单线程2、在山的两头挖,同时开工,最后在山的中间接通,从而打通隧道,这感觉肯定比1快了很多,好比多线程但是2成立的前提是必须有两个工人。而我们的计算机中一般来说只有一个CPU,也就是说只有一个工人。多线程不过是CP...转载 2019-05-24 11:04:13 · 764 阅读 · 0 评论 -
Java中Comparable与Comparator的区别
一、概述Comparable和Comparator都是用来实现集合中元素的比较、排序的。Comparable是在集合内部定义的方法实现的排序,位于java.lang下。Comparator是在集合外部实现的排序,位于java.util下。Comparable是一个对象本身就已经支持自比较所需要实现的接口,如String、Integer自己就实现了Comparable接口,可完成比较大小操...原创 2019-03-25 10:22:58 · 113 阅读 · 0 评论 -
Java多线程——等待唤醒机制
[转载来源](https://blog.csdn.net/watermusicyes/article/details/8804530) 在开始讲解等待唤醒机制之前,有必要搞清一个概念——线程之间的通信:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。通过一定的手段使各个线程能有效的利用资源。而这种手段即—— 等待...转载 2019-03-09 12:05:57 · 308 阅读 · 0 评论 -
java中的运算符
Java原创 2019-01-04 04:21:42 · 262 阅读 · 1 评论 -
Java运行时内存区域划分
Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分为若干个不同的数据区域。它们各有用途,有些随着虚拟机进程的启动一直存在(堆、方法区),有些则随着用户线程的启动和结束而建立和销毁(程序计数器、虚拟机栈、本地方法栈)。转载 2019-01-18 00:35:58 · 422 阅读 · 0 评论 -
Java中的foreach循环--增强的for循环
今天浏览网页的时候无意中看到了另外一种循环,foreach循环,它是在jdk1.5引入的一种增强型for循环,它的引入简化了集合的遍历,而且性能和代码简洁性优于普通的for循环和Iterator,缺点是丢失了索引信息,当需要访问集合的下标时,不应该使用for each循环。基本语法:for (type element:array){ System.out.println(element);...原创 2019-01-09 01:51:11 · 359 阅读 · 0 评论 -
十进制数转换为十六进制-Java
不使用Java自带函数怎么将十进制数变为十六进制数?Java中存在十六进制和十进制之间直接转换的方法// 十进制转化为十六进制,结果为1a。Integer.toHexString(26); // 十六进制转化为十进制,结果26。Integer.parseInt("1a",16); 本文则是自己写了一个程序用于十进制变为十六进制,简单易懂,也可以根据本文章试着自己试着将十六进制变为十进...原创 2019-01-15 22:15:17 · 6669 阅读 · 0 评论 -
十进制和各种进制之间的转换
写了一个程序用于十进制和二进制,八进制,十六进制之间的转换原创 2019-01-27 03:42:05 · 580 阅读 · 0 评论 -
Java多线程状态图
多线程是Java特有的机制,下图中展示了Java一个线程的生命周期精简版详细版说明:线程一共包括以下五种状态1.新建状态(New):线程对象被创建之后,就进入到了新建状态。2.就绪状态(Runnable):也称为“可执行状态”。线程对象调用了start()方法,从而启动该线程。处于就绪状态的线程,随时可能被cpu调度执行。3.运行状态(Running):线程获取cpu权限之后,执行r...原创 2019-03-01 19:02:01 · 1013 阅读 · 0 评论 -
Java 单例设计模式
单例设计模式是Java中最常见也是最简单的一种设计模式原创 2019-03-05 20:48:32 · 128 阅读 · 0 评论 -
Java中的数据类型
这是本人的第一篇博客,目前是大三的学生,这些东西可以当成是自己的笔记总结,本人还在学习的过程中,难免会有不合适之处,欢迎大家指正。Java数据类型有两类:内置类型和扩展类型。内置类型又叫基本数据类型,包括四个整型,两个浮点型,一个字符型和一个布尔型,其中的四个整型都是二进制补码表示的整数,浮点型是符合IEEE 754标准的浮点数。基本数据类型名称类型定义取值范围byt...原创 2018-12-12 03:42:39 · 228 阅读 · 0 评论