随笔分类 - Java
摘要:一、时间戳与Date相互转换 1. 时间戳转Date public static void timestamp2Date() { long timeMillis = System.currentTimeMillis(); Date date = new Date(timeMillis); } 2.
阅读全文
摘要:java.util.Date 包含了日期、时间、毫秒数等 java.time.LocalDate 仅包含日期 Date对象的实例化方式有: 1. new Date() 2. new Date(long date): 通过毫秒数初始化。毫秒数可以通过 java.sql.Timestamp对象的.get
阅读全文
摘要:通常 Java 执行 Windows 或者 Linux 的命令时,都是使用 Runtime.getRuntime.exec(command) 来执行的 eg1: 执行命令 public static void execCommand() { try { Runtime runtime = Runti
阅读全文
摘要:一、冒泡排序 百度百科 public static void bubbleSort(int[] ints) { for(int i = 0; i < ints.length - 1; i++) { for(int j = 0; j < ints.length - 1 - i; j++) { if (
阅读全文
摘要:方式1:被除数转double后,除以除数,结果是一个double类型的数,将double结果按要求保留n位小数即可。 保留n位小数的写法 int a = 10; int b = 3; double res = new BigDecimal((double) a / b).setScale(2, Ro
阅读全文
摘要:1. 使用BigDecimal double v = 1.233; double res = new BigDecimal(v).setScale(2, RoundingMode.HALF_UP).doubleValue(); tip: setScale中的 roundingMode参数详解,参考此
阅读全文
摘要:二分查找的前提是线性表(数组、列表)是已经有序排列的,如果无序则需要先排序。释义参考百度百科 1.循环二分查找 public static int binarySearch(int[] ints, int target) { int start = 0; int end = ints.length
阅读全文
摘要:public static boolean isPrime(int num) { /* * 质数定义:只有1和它本身两个因数的自然数 * * 1. 小于等于1或者是大于2的偶数,直接返回false * 2. 2直接返回true * 3. 从3开始算起(每次加2,截止为输入值的平方根),每次输入值除以
阅读全文
摘要:public static boolean isPalindrome(String str) { int start = 0, end = str.length() - 1; while (start < end) { if (str.charAt(start) != str.charAt(end)
阅读全文
摘要:测试代码 public class SingleTest { public static String v = "StaticValue"; static { System.out.println("static静态变量:" + v); System.out.println("static静态块")
阅读全文
摘要:一.字符流:读写纯文本(txt,csv等), 1 字符流写文件主要用:FileWriter,BufferedWriter,PrintWriter 1.1 测试 FileWriter 写入 private void writeFileWriter() throws IOException { try
阅读全文
摘要:1.Windows下执行cmd命令 如复制 D:\tmp\my.txt 到D:\tmp\my_by_only_cmd.txt 现文件如图示: 执行代码: private static void runWinCmd() throws IOException, InterruptedException
阅读全文
摘要:用for-each 边遍历ArrayList 边修改时: public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("aa"); list.add("bb"); list
阅读全文
摘要:实际上,JVM内存可以分为堆(Heap),栈(Track),方法区(Method Area) 堆(Heap): ①JVM管理的内存中最大的一块,唯一的目的就是存放对象实例,比如 Object obj = new Object(); new Object() 就存放在堆中 ②如果在堆中没有内存完成实例
阅读全文
摘要:微服务: 微服务是一种架构风格,一般说到微服务都会说“微服务架构”,即一个系统的各个功能(如结账,用户等)独立出来,以及各个服务独立出来,每个模块是可独立替换、可独立升级的软件单元,每个模块间以Http 的方式进行沟通。 百度百科解释如下: 传统架构: 传统应用即单体应用(All In One) 举
阅读全文
摘要:1. Vector, ArrayList, LinkedList的区别 Vector:①长度可变,以类似数组的形式存储于内存中,线程安全(同步),因为其大部分方法都有synchronized 关键字,正因为是同步的,所以进行频繁的数据操作时,必然会导致性能的下降。 ②当增加的元素长度超过Vector
阅读全文
摘要:public class Father { static { System.out.println("Father静态块"); } { System.out.println("Father构造块"); } public Father() { System.out.println("Father构造函
阅读全文
摘要:多线程先明白一个术语“中断状态”,中断状态为true,线程中断。 interrupt():就是通知中止线程的,使“中断状态”为true。 isInterrupted():就是打印中断状态的,然后不对中断状态有任何操作。 interrupted():检测运行这个方法的线程的中断状态,注意,是运行这个方
阅读全文
摘要:这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。 String最慢的原因: String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者的对象是变量,是可以更改的。以下面一段代码为例: 如
阅读全文

浙公网安备 33010602011771号