Java
Java学习。。。
grape-stone
这个作者很懒,什么都没留下…
展开
-
接口组成更新
接口中默认方法package myInterfaceDefault;public interface MyInterface { void show1(); void show2();// void show3(); //默认方法(可以不重写) default void show3() { System.out.println("show3"); }}package myInterfaceDefault;public cl原创 2021-06-21 22:29:21 · 42 阅读 · 0 评论 -
lambda表达式
package myLambdaDemo;public class MyRunnable implements Runnable { @Override public void run() { System.out.println("多线程程序启动了"); }}package myLambdaDemo;/* 启动一个多线程,在控制台输出一句话,多线程程序启动了 */public class LambdaDemo { public st原创 2021-06-21 21:20:56 · 55 阅读 · 0 评论 -
TCP发送、接收数据
客户端发送package myNetworkDemo;import java.io.IOException;import java.io.OutputStream;import java.net.Socket;public class TCPClientDemo { public static void main(String[] args) throws IOException { //public Socket(String host, int port); 创建流原创 2021-06-01 18:09:30 · 306 阅读 · 2 评论 -
UDP发送、接收数据
sendpackage myNetworkDemo;import java.io.IOException;import java.net.*;public class UDPSendDemo { public static void main(String[] args) throws IOException { //public DatagramSocket(); 构造数据包套接字并将其绑定到本地主机上的任何可用端口 DatagramSocket ds原创 2021-06-01 17:30:20 · 139 阅读 · 0 评论 -
InetAddress
package myNetworkDemo;import java.net.InetAddress;import java.net.UnknownHostException;public class InetAddressDemo { public static void main(String[] args) throws UnknownHostException { //public static InetAddress getByName(String host);原创 2021-06-01 16:36:46 · 45 阅读 · 0 评论 -
Lock锁
package myMultithreadingDemo;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class SellTicket implements Runnable { private static int tickets = 100; private Lock lock = new ReentrantLock(); @原创 2021-05-31 22:07:25 · 31 阅读 · 0 评论 -
线程安全的类
package myMultithreadingDemo;import java.util.*;//虽然Vector、HashTable是线程安全,但通常还是使用synchronizedList方法public class ThreadSafetyDemo { public static void main(String[] args) { StringBuffer stringBuffer = new StringBuffer(); //线程安全 Stri原创 2021-05-31 21:32:16 · 354 阅读 · 0 评论 -
线程的数据安全问题
package myMultithreadingDemo;public class SellTicket implements Runnable { private int tickets = 100; @Override public void run() { while (true) { if (tickets > 0) { try { Thread.sleep(100);原创 2021-05-30 20:17:47 · 38 阅读 · 0 评论 -
实现Runnable接口的方式实现多线程
package myMultithreadingDemo;public class MyRunnable implements Runnable { @Override public void run() { for (int i = 0; i < 100; i++) { //不能直接使用getName方法 System.out.println(Thread.currentThread().getName() + ":原创 2021-05-29 20:18:20 · 94 阅读 · 0 评论 -
线程控制sleep、join、daemon
sleeppackage myMultithreadingDemo;public class ThreadSleep extends Thread { @Override public void run() { for (int i = 0; i < 100; i++) { System.out.println(getName() + ": " + i); try { //publi原创 2021-05-29 20:07:39 · 59 阅读 · 0 评论 -
线程优先级Priority
package myMultithreadingDemo;public class ThreadPriority extends Thread { @Override public void run() { for (int i = 0; i < 100; i++) { System.out.println(getName() + ": " + i); } }}package myMultithreadingD原创 2021-05-29 19:46:48 · 64 阅读 · 0 评论 -
继承Thread类的方式实现多线程
package myMultithreadingDemo;public class MyThread extends Thread{ @Override public void run() { for (int i = 0; i < 100; i++) { System.out.println(i); } }}package myMultithreadingDemo;public class MyThread原创 2021-05-29 19:14:36 · 161 阅读 · 0 评论 -
Properties实现猜数字,控制游戏次数(store存档、load读档)
package myGuessNumber;import java.util.Random;import java.util.Scanner;public class GuessNumber { private GuessNumber() { } public static void guess() { Random r = new Random(); int number = r.nextInt(100) + 1; wh原创 2021-05-29 18:58:23 · 170 阅读 · 1 评论 -
Propertiesl类
package mySpecialStreamDemo;import java.util.Properties;import java.util.Set;public class PropertiesDemo { public static void main(String[] args) { //创建集合对象// Properties<String, String> prop = new Properties<String, String原创 2021-05-29 18:33:19 · 43 阅读 · 0 评论 -
ObjectOutputStream对象序列化流、ObjectInputStream对象反序列化流
package mySpecialStreamDemo;import java.io.Serializable;//Serializable标识类的对象可以被序列化public class Student implements Serializable { private String name; private int age; public Student() { } public Student(String name, int age) {原创 2021-05-28 21:25:00 · 66 阅读 · 0 评论 -
PrintStream字节打印流、PrintWriter字符打印流
package mySpecialStreamDemo;import java.io.IOException;import java.io.PrintStream;public class PrintStreamDemo { public static void main(String[] args) throws IOException { //public PrintStream(String fileName); 使用指定的文件名创建字节打印流 Pri原创 2021-05-27 23:18:17 · 64 阅读 · 0 评论 -
System.in标准输入流、System.out标准输出流
package mySpecialStreamDemo;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.Scanner;public class SystemInDemo { public static void main(String[] args) throws原创 2021-05-27 22:48:52 · 227 阅读 · 0 评论 -
复制文件夹
单级文件夹package myCopyFolderDemo;import java.io.*;public class CopyFolderDemo { public static void main(String[] args) throws IOException { //创建数据源目录File对象,路径是F:\\itcast File srcFolder = new File("F:\\itcast"); //获取数据源目录File对原创 2021-05-27 21:56:19 · 57 阅读 · 0 评论 -
集合到文件,文件到集合
package myListAndStreamDemo;import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;public class ArrayListToTxtDemo01 { public static void main(String[] args) throws IOException { Arr原创 2021-05-23 19:58:37 · 59 阅读 · 0 评论 -
BufferedWriter、BufferedReader——字符缓存流
package myStreamDemo;import java.io.*;public class BufferedStreamDemo01 { public static void main(String[] args) throws IOException { //public BufferedWriter(Writer out); BufferedWriter bw = new BufferedWriter(new FileWriter("Test\\原创 2021-05-22 22:45:56 · 69 阅读 · 0 评论 -
InputStreamReader——字符流读数据
package myStreamDemo;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStreamReader;public class InputStreamReaderDemo { public static void main(String[] args) throws IOException {原创 2021-05-21 23:09:40 · 159 阅读 · 0 评论 -
OutputStreamWriter——字符流写数据
package myStreamDemo;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;//字符流写数据public class OutputStreamWriterDemo { public static void main(String[] args) throws I原创 2021-05-21 23:00:49 · 137 阅读 · 0 评论 -
编码解码问题
字符串package myCodeDemo;import java.io.UnsupportedEncodingException;import java.lang.reflect.Array;import java.nio.charset.StandardCharsets;import java.util.Arrays;public class StringDemo { public static void main(String[] args) throws Unsupporte原创 2021-05-19 22:57:01 · 63 阅读 · 0 评论 -
BufferedOutputStream、BufferedInputStream——字节缓冲流
package myBufferedStreamDemo;import java.io.*;public class BufferedStreamDemo { public static void main(String[] args) throws IOException { //public BufferedOutputStream(OutputStream out); 字节缓存输出流 FileOutputStream fos = new FileOutp原创 2021-05-15 22:20:01 · 80 阅读 · 0 评论 -
FileInputStream——字节流读数据
package myFileInputStreamDemo;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;public class FileInputStreamDemo01 { public static void main(String[] args) throws IOException { //public FileInp原创 2021-05-15 21:06:31 · 56 阅读 · 0 评论 -
FileOutputStream——字节流写数据
package myFileOutputStreamDemo;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.nio.charset.StandardCharsets;public class FileOutputStreamDemo02 { public static void原创 2021-05-13 22:35:38 · 243 阅读 · 0 评论 -
File类
构造函数package myFileDemo;import java.io.File;public class FileDemo01 { public static void main(String[] args) { //File(String pathname); 通过将给定的路径文件名字符串转化成抽象路径名来创建新的File实例 File f1 = new File("F:\\abc\\java.txt"); System.out原创 2021-04-23 22:56:16 · 52 阅读 · 0 评论 -
集合实现模拟斗地主
package myPokerDemo;import java.util.ArrayList;import java.util.Collections;public class PokerDemo { public static void main(String[] args) { //创建牌盒 ArrayList<String> cardBox = new ArrayList<String>(); //往牌盒里装牌原创 2021-04-23 21:18:00 · 45 阅读 · 0 评论 -
Collections
package myCollectionsDemo;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class CollectionsDemo { public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>();原创 2021-04-22 22:37:05 · 30 阅读 · 0 评论 -
HashMap——统计字符串中每个字符出现的次数
package myMapDemo;import java.util.HashMap;import java.util.Scanner;import java.util.Set;import java.util.TreeMap;public class HashMapDemo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out原创 2021-04-21 23:05:54 · 160 阅读 · 0 评论 -
Map
package myMapDemo;import java.util.Collection;import java.util.HashMap;import java.util.Map;import java.util.Set;public class MapDemo { public static void main(String[] args) { Map<String, String> map = new HashMap<String, Strin原创 2021-04-19 23:10:28 · 55 阅读 · 0 评论 -
可变参数
package myArgsDemo;public class ArgsDemo { public static void main(String[] args) { System.out.println(sum(10, 20)); System.out.println(sum(10, 20, 30)); System.out.println(sum(10, 20, 30, 40)); System.out.println(sum(原创 2021-04-08 23:11:40 · 38 阅读 · 0 评论 -
类型通配符
package myGenericListDemo;import java.util.ArrayList;import java.util.List;//Object <-- Number <-- Integerpublic class GenericDemo { public static void main(String[] args) { //类型通配符:<?> 任何类型 List<?> list1 = new A原创 2021-04-08 22:55:40 · 44 阅读 · 0 评论 -
泛型
泛型类package myGenericDemo;public class Generic<T> { private T t; public T getT() { return t; } public void setT(T t) { this.t = t; }}package myGenericDemo;public class GenericDemo { public static void原创 2021-04-08 22:22:07 · 52 阅读 · 0 评论 -
TreeSet使用比较器Comparator排序
package myTreeSetDemo;public class Student { private String name; private int age; public Student() { } public Student(String name, int age) { this.name = name; this.age = age; } public String getName() {原创 2021-04-07 22:56:48 · 138 阅读 · 0 评论 -
TreeSet使用自然排序Comparable
package myTreeSetDemo;//排序元素所属类实现Comparable接口,并重写compareTo(T o)方法public class Student implements Comparable<Student> { private String name; private int age; public Student() { } public Student(String name, int age) {原创 2021-04-07 22:43:52 · 74 阅读 · 1 评论 -
TreeSet
package myTreeSetDemo;import java.util.TreeSet;/* TreeSet 1.元素有序,按照一定的规则进行排序,具体排序方式取决于构造方法 TreeSet():根据其元素的自然排序进行排序 TreeSet(Comparator comparator):根据指定的比较器进行排序 2.没有带索引的方法,所以不能用普通for循环遍历 3.由于是Set集合,所以不包原创 2021-04-06 23:00:51 · 42 阅读 · 0 评论 -
LinkedHashSet
package myLinkedHashSetDemo;import java.util.LinkedHashSet;/* LinkedHashSet 1.哈希表和链表实现的Set接口,具有可预测的迭代次序 2.由链表保证元素有序,也就是说元素的存储和取出顺序是一致的 3.由哈希表保证元素唯一,也就是说没有重复的元素 */public class LinkedHashSetDemo { public static void main(原创 2021-04-06 22:45:52 · 56 阅读 · 0 评论 -
HashSet——重写hashCode()和equals()
package myHashSetDemo;//通过重写hashCode()和equals(),使得Student对象的成员变量值相同,就认为是同一个对象public class Student { private String name; private int age; public Student() { } public Student(String name, int age) { this.name = name;原创 2021-04-06 22:34:56 · 107 阅读 · 0 评论 -
Set
package mySetDemo;import java.util.HashSet;import java.util.Set;/* Set特点 不包含重复元素的集合 没有带索引的方法,所以不能使用普通for循环遍历 HashSet:对集合的迭代顺序不作任何保证*/public class SetDemo { public static void main(String[] args) { Set<String>原创 2021-04-03 22:58:09 · 55 阅读 · 0 评论