
Java基础
CorlorfulXuan
这个作者很懒,什么都没留下…
展开
-
Java多线程
一、基本概念进程:资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。线程:是程序执行时的最小单位,它是进程的一个执行流。进程与线程的区别:进程是资源分配的最小单位,线程是程序执行的最小单位; 进程拥有独立的地址空间,线程共享进程中的数据,使用同一个地址空间; 进程间的通信比较复杂,线程间共享同一进程下的数据;多进程与多线程的优劣:创建进程比创建线程的开销大; 进程间的通信比线程间的要慢; 多进程比多线程稳定,多线程中的任何一个线程的崩溃都会导致整个进程的崩溃;二原创 2021-12-03 17:28:48 · 310 阅读 · 0 评论 -
Java简单算法
package algorithm;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Collections_test { public static void main(String[] args) { List<Integer> numbers = new ArrayList<>(); for (.原创 2021-11-14 13:03:15 · 376 阅读 · 0 评论 -
Java中的映射
package List;import java.util.HashMap;import java.util.Map;public class HashMap_Demo { public static void main(String[] args) { //使用默认初始容量(16)和默认加载因子(0.75)构造一个空 HashMap Map<String, Integer> map = new HashMap<>(); .原创 2021-11-05 11:52:37 · 902 阅读 · 0 评论 -
Java中的队列
package list_demo;import java.util.ArrayDeque;import java.util.Deque;import java.util.LinkedList;import java.util.Queue;public class Queen_Demo { public static void main(String[] args) { //创建一个链式队列 Queue<String> queue = ne.原创 2021-11-04 22:16:01 · 123 阅读 · 0 评论 -
Java中的散列集
package List;import java.util.HashSet;import java.util.Iterator;public class HashSet_Demo { public static void main(String[] args) { //构造一个新的空集 HashSet<String> set = new HashSet<>(); //如果指定的元素尚不存在,则将其添加到此集合中 .原创 2021-11-03 11:50:38 · 214 阅读 · 0 评论 -
Java中的链表
package list_demo;import java.util.Iterator;import java.util.ListIterator;import java.util.LinkedList;import java.util.List;public class LinkedList_demo { public static void main(String[] args) { //构建一个空链表 List<String> a =.原创 2021-11-02 13:08:03 · 184 阅读 · 0 评论 -
泛型程序设计
一、泛型类泛型类:package pair1;//一个泛型类就是具有一个或多个类型变量的类,Pair<T, U>{...}//一般使用E表示集合的元素类型,K和V分别表示表的关键字与值的类型,T(或U、S等)表示“任意类型”public class Pair<T> { private T first; private T second; public Pair() { } public Pair(T first, T seco原创 2021-09-17 09:41:09 · 245 阅读 · 0 评论 -
Java异常处理
一、异常分类所有的异常都是由Throwable类继承而来,异常对象都是派生于Throwable类的一个实例;分支1:Error类,描述了Java运行时系统的内部错误和资源耗尽错误。(非受查异常)分支2:Exception类;2.1 分支1:RuntimeException,由程序错误导致的异常:(非受查异常)(1)错误的类型转换;(2)数组访问越界;(3)访问null指针。2.2 分支2:其他异常:(受查异常)(1)试图在文件尾部后面读取数据;(2)试图打开一个不存在的文件;(3)试原创 2021-09-16 10:59:37 · 87 阅读 · 0 评论 -
Java内部类
1、使用内部类访问对象状态类:package innerClass;import timer.TimePrinter;import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Date;public class TalkingClock { private int interval;原创 2021-09-14 22:51:39 · 86 阅读 · 0 评论 -
Lambda表达式
1、概念lambda表达式是一个可传递的代码块。2、语法参数 -> 表达式可以把代码放在{}中,并包含显式的return语句;(String first, String second)->{ if(first.length() < second.length()) return -1; else if(first.length() > second.length()) return 1; else return 0;}即使lambda表达式没原创 2021-09-14 10:41:47 · 135 阅读 · 0 评论 -
Java中的接口
1、接口的概念接口:package java.lang;public interface Comparable<T> { int compareTo(T var1);}实现类:package interfaces;//使用implements表示类实现接口public class Employee implements Comparable<Employee>{ private String name; private double s原创 2021-09-10 11:49:39 · 154 阅读 · 0 评论 -
枚举类
枚举类package enums;import java.util.Arrays;import java.util.Locale;import java.util.Scanner;public class EnumTest { public static void main(String[] args) { //每个枚举类都有静态的values方法,它将返回一个包含全部枚举值的数组 Size[] values = Size.values();原创 2021-09-06 17:50:20 · 106 阅读 · 0 评论 -
参数数量可变的方法
参数数量可变的方法public class Test { public static void main(String[] args) { System.out.println(max(1,2,34,4)); } public static double max(double...values) { //Double.NEGATIVE_INFINITY表示负无穷,Double.POSITIVE_INFINITY表示正无穷,Double.NaN表示非数原创 2021-09-06 17:20:40 · 110 阅读 · 0 评论 -
对象包装器与自动装箱
对象包装器与自动装箱import java.text.NumberFormat;import java.util.ArrayList;public class Test { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<>(); //valueOf(String s)返回用s表示的整型数值进行初始化后的一个新Integer原创 2021-09-06 16:42:50 · 75 阅读 · 0 评论 -
泛型数组列表
package test;import abstractClasses.*;import java.util.ArrayList;public class Demo { public static void main(String[] args) { //用指定容量构造一个空数组列表 ArrayList<Employee> staff = new ArrayList<>(5); //在数组列表的尾端添加一个元素,永远原创 2021-09-06 11:50:43 · 120 阅读 · 0 评论 -
Object类常用方法
超类package equals;import java.time.LocalDate;import java.util.Objects;public class Employee { //实例域 private String name; private double salary; private LocalDate hireDay; //构造器 public Employee() { } public Employee(Stri原创 2021-09-06 00:07:41 · 147 阅读 · 0 评论 -
Idea快捷键
Ctrl快捷键 介绍Ctrl + F 在当前文件进行文本查找 (必备)Ctrl + R 在当前文件进行文本替换 (必备)Ctrl + Z 撤销 (必备)Ctrl + Y 删除光标所在行 或 删除选中的行 (必备)Ctrl + X 剪切光标所在行 或 剪切选择内容Ctrl + C 复制光标所在行 或 复制选择内容Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面 (必备)Ctrl + W 递进式选择代码块。可选中光标所在的单词或段落,连续按会在原有选中的基础上再原创 2021-09-05 23:06:49 · 181 阅读 · 0 评论 -
Java中的继承
超类:package test;import java.util.Random;public class Employee { //静态域为该类所有对象共享 private static int nextId; //实例域 private int id; private String name = ""; private double salary; //静态初始化块,会在类第一次加载的时候执行 static { //原创 2021-09-03 16:11:27 · 69 阅读 · 0 评论 -
Java对象与类
一、相关概念类是构造对象的模板或蓝图。封装是将数据和行为组合在一个包中,并对对象的使用者隐藏了数据的实现方式。实例域:对象中的数据。获得或设置实例域的值所需提供的内容:(1)一个私有的数据域;(2)一个公有的域访问器方法;(3)一个公有的域更改器方法。方法:操纵对象中数据的过程。对象的三个特征:对象的行为,对象的状态,对象标识。类之间的关系:(1)依赖(uses-a):一个类的方法操纵另一个类的对象;(2)聚合(has-a):一个类的对象包含另一个类的对象;(3)继承(is-a)原创 2021-09-01 12:02:36 · 69 阅读 · 0 评论 -
Java中的LocalDate类
日历表import java.time.DayOfWeek;import java.time.LocalDate;public class Demo { public static void main(String[] args) { //(静态工厂方法)构造一个表示给定日期的对象 //LocalDate date = LocalDate.of(2021,9,7); //构造一个表示当前日期的对象 LocalDate date原创 2021-08-24 12:11:13 · 294 阅读 · 0 评论 -
Java中的数组
Java中的数组public class Demo { public static void main(String[] args) throws IOException { //数据的初始值 int[] ints = new int[1];//初始为0 boolean[] booleans = new boolean[1];//初始为false String[] strings = new String[1];//初始为null原创 2021-08-16 20:22:56 · 100 阅读 · 0 评论 -
Java中的循环
public class Demo { public static void main(String[] args) throws IOException { int[] num = {1,2,3,4}; //for循环 for (int i = 0; i < num.length; i++){ System.out.println(num[i]); }//输出1234 //while循环原创 2021-08-16 16:13:05 · 82 阅读 · 0 评论 -
Java中的输入输出
读取输入public class Demo { public static void main(String[] args) { //创建一个Scanner对象 Scanner input = new Scanner(System.in); //读取输入的下一个单词,以空格作为分隔符 String name1 = input.next(); //读取输入的下一行内容 String name2 = inp原创 2021-08-16 15:28:52 · 117 阅读 · 0 评论 -
Java中的StringBuilder类
Java中的StringBuilder类public class Demo { public static void main(String[] args) { //构造一个空的字符串构建器 StringBuilder builder = new StringBuilder(); //给构建器加内容 builder.append('I');//追加一个代码单元'I' builder.append(" love ");/原创 2021-08-12 17:06:31 · 111 阅读 · 0 评论 -
Java中的字符串(String类的实例)
Java中的字符串import java.util.Arrays;public class Demo { public static void main(String[] args) { //1、m.substring(a,b)提取出m的a到b-1的子串 String m1 = "endeavour"; String an = m1.substring(0,2);//输出为en //2、使用+可以进行字符串拼接原创 2021-08-01 22:52:29 · 561 阅读 · 0 评论 -
Java中的运算
public class MathDemo { public static void main(String[] args) { //Math.sqrt()函数计算x1的平方根 double x1 = 4; double y1 = Math.sqrt(x1); //Math.pow(x2, a)计算x2的a次幂 double x2 = 5; double a = 2.0; double y原创 2021-07-25 14:28:11 · 300 阅读 · 0 评论