![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
冰冻三尺12581
这个作者很懒,什么都没留下…
展开
-
Java生产者消费者问题
public class Program { public static void main(String[] args) { // 1. 实例化一个橱柜 Box box = new Box(); // 2. 实例化两个个生产者 Productor productorA = new Productor("张大厨", 100, box); Productor productorB = new Productor("谢小厨原创 2020-08-18 08:51:43 · 125 阅读 · 0 评论 -
Java生成不重复的随机数
package self.exercise;import java.util.Arrays;public class NoRepeatRandomNumber { public static void main(String[] args) { getNotNumber1(); getNotNumber2(); } public static void getNotNumber1(){ //1. 声明整型数组原创 2020-07-06 20:51:42 · 5657 阅读 · 0 评论 -
JDBC的复习
一、JDBC的简介1. 市场需求促进了技术的产生:要求应用程序和数据库交互这块有一个统一接口规范, 最开始是微软的ODBC提出了 应用程序层->驱动管理器–>多个驱动程序(jar包)–>数据源–>数据库2. sun公司为java语言连接各种数据库提供了一个统一标准规范接口JDBC,全程java database connectivity具体实现由各个数据库厂商来完成,开发人员只需要拿来用即可,无需操心底层实现。3. 核心组件:- DriverManager: 驱动管理类型原创 2020-05-26 22:34:37 · 134 阅读 · 0 评论 -
Java自动生成日志文件(带时间)
/** * @Description */public class LogsTest { public static void main(String[] args) { System.out.println("hello"); Logs.println("hello"); }}import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io原创 2020-05-14 19:46:33 · 1035 阅读 · 0 评论 -
使用缓冲字符流实现文本文件的拷贝
import java.io.*;/** * @Description 使用缓冲字符流实现文本文件的拷贝 */public class BufferedCopy { public static void main(String[] args) { try (BufferedReader reader = new BufferedReader(new FileReader("file\\src")); BufferedWriter writer =原创 2020-05-14 18:46:41 · 973 阅读 · 0 评论 -
设计一个方法,实现一个文件夹的拷贝(包括文件夹中的子文件和子文件夹)
import java.io.*;/** * @Description 设计一个方法,实现一个文件夹的拷贝(包括文件夹中的子文件和子文件夹) * * 思路: 这里,一定要用到递归的思想。 * 1. 设计一个方法,用来做拷贝一个文件夹中的所有的子文件。 * 2. 如果存在子文件夹,则递归调用当前的这个方法。 */public class Test { public static void main(String[] args) { co原创 2020-05-14 18:29:17 · 528 阅读 · 0 评论 -
设计两个方法,分别实现拷贝一个文本文件(分别用字节流和字符流实现)
import java.io.*;/** * @Description 设计两个方法,分别实现拷贝一个文本文件(分别用字节流和字符流实现) */public class FileCopy { public static void main(String[] args) { //这里用的相对路径 fileCopy("file\\source", "file\\source"); fileCopy2("file\\src", "file\\src")原创 2020-05-14 18:26:17 · 1049 阅读 · 0 评论 -
使用字节流实现文件的拷贝
import java.io.*;/** * @Description 使用字节流实现文件的拷贝 */public class FileCopy { public static void main(String[] args) { boolean ret = copy("D:\\src.mp4", "D:\\dst.mp4"); System.out.println(ret); } /** * 实现功能: 将源文件中的数据拷贝到目原创 2020-05-14 09:19:38 · 978 阅读 · 0 评论 -
设计一个方法,删除一个文件夹中的所有的内容,包括这个文件夹本身
public class Test { public static void main(String[] args) { // deleteDir(new File("D:\\source")); } // 设计一个方法,删除一个文件夹中的所有的内容,包括这个文件夹本身。 //谨慎操作,删除不经过回收站 public static void deleteDir(File dir) { // 1. 获取一个目录下所有的子原创 2020-05-13 20:18:31 · 440 阅读 · 0 评论 -
设计一个方法,计算一个文件夹的总大小
import java.io.File;/** * @Description 设计一个方法,计算一个文件夹的总大小(由所有的子文件、子文件夹中的子文件夹大小组成) * 思路:使用递归 */public class Test { public static void main(String[] args) { long size = calculate(new File("D:\\")); System.out.println(size); }原创 2020-05-13 18:58:36 · 370 阅读 · 0 评论 -
使用链表数据结构实现一个自定义的集合(模拟LinkedList)
/** * @Description 使用链表数据结构实现一个自定义的集合(模拟LinkedList) */public class MyLinkedList<E> { // 链表中,元素是以节点的形式存储的 // 内部类,表示一个节点 private class Node { E element; // 表示这个节点需要存储的元素 Node previous; // 上一个节点的地址 Node next;原创 2020-05-13 18:30:59 · 184 阅读 · 0 评论 -
设计一个方法,随机生成10个不重复的10以内的数字,存入一个List集合
import java.util.ArrayList;import java.util.List;/** * @Description 设计一个方法,随机生成10个不重复的10以内的数字,存入一个List集合。 */public class Test { // 错误思路:随机生成一个数字,判断这个数字在集合中是否已经存在。如果存在,再重新生成;如果不存在,存入集合。 // 新建一个存储所有可能随机到的数字的集合。随机一个下标,从数据源集合中获取元素,将获取到的元素从数据源中移除,原创 2020-05-13 09:19:47 · 2341 阅读 · 1 评论 -
设计一个双色球小游戏(一注双色球,由6个红球,和1个蓝球组成)
设计一个双色球小游戏(一注双色球,由6个红球,和1个蓝球组成)自选号码,从控制台输入机选号码,随机生成一注双色球对比两注双色球,获取中奖金额/** @Description2. 设计一个双色球小游戏(一注双色球,由6个红球,和1个蓝球组成) * 1. 自选号码,从控制台输入 * 2. 机选号码,随机生成一注双色球 * 3. 对比两注双色球,获取中奖金额 */pu原创 2020-05-12 09:33:12 · 1861 阅读 · 0 评论 -
设计模式之适配器模式
有些时候, 我们要使用到的功能, 在其他的模块中已经完成了。 但是当我们直接使用这个已经实现的功能模块的时候, 已经实现的这个模块和我们现在需要使用到的模块之间有接口不兼容的问题。 此时, 我们没有办法直接使用这个已经实现的模块。电源适配器: 每一个手机、 电脑都有电源适配器, 可以将220V的交流电适配成电脑、 手机可以承受的范围, 可以直接使用的范围。手机适配器: 电脑上都有USB接口, 可以直接连接一些USB的外设设备, 例如: U盘、 鼠标、 键盘、 硬盘…。 但是, 有些时候,我们需要将手原创 2020-05-11 18:37:22 · 82 阅读 · 0 评论 -
Java小明交换牌
public class Five { // 小明交换牌:小明左手和右手分别拿了一张扑克牌,需要交换两只手中的扑克牌。最后小明展示交换后的扑克牌。扑克牌有花色和点数属性。 // 类的设计:人、手、扑克牌 public static void main(String[] args) { // 1. 实例化两张扑克牌 Poker poker1 = new Poker(); poker1.color = "黑桃"; poker原创 2020-05-11 17:32:11 · 564 阅读 · 0 评论 -
设计一个方法,找出一个整型数组中的第二大的值。
public class Three { // 设计一个方法,找出一个整型数组中的第二大的值。 // 1. 不可以通过排序实现,不能修改数组中的数据顺序 // 2. 要考虑到最大的数字可能出现多次 public static void main(String[] args) { // int[] array = { 1, 3, 5, 7, 9, 9, 9, 9, 7, 7, 7, 9, 6, 0 }; int second =原创 2020-05-11 09:27:44 · 544 阅读 · 0 评论 -
求2+22+222+2222+22222+...+2...2的和,数字的数量由控制台输入
public class HardThree { // 求2+22+222+2222+22222+...+2...2的和,数字的数量由控制台输入 public static void main(String[] args) { // 需要累加的数字数量 int count = 5; // 1. 定义一个变量,用来存储累加的和 int sum = 0; // 2. 定义一个变量,用来记录本次累加了什么数字原创 2020-05-11 09:01:26 · 1066 阅读 · 0 评论 -
Java回文数
public class HardTwo { public static void main(String[] args) { // 12345 => 54321 int num = 12321; System.out.println(num == getReverse(num)); } /** * 计算一个数字翻转之后的数字 * @param number 数字 * @return 翻转之后的数字原创 2020-05-11 08:58:39 · 81 阅读 · 0 评论 -
设计方法,计算一个数字的原码
public class HardOne { /** * 设计方法,计算一个数字的原码 * 1. 需要考虑正数和负数 * 2. 进行补位(不够8位凑齐8位,不够16位凑齐16位,不够32位凑齐32位) * 3. String str = "abc"; str.length() 获取字符串的长度 */ public static void main(String[] args) {原创 2020-05-11 08:57:52 · 1530 阅读 · 0 评论 -
Java循环图形
public class Five { /* ***** ******* ** ABCDE EFGHI ***** ******* BCDEF DEFGH ***** ***** CDEFG CDEFG ***** *** DEFGH原创 2020-05-11 08:21:48 · 280 阅读 · 0 评论 -
从控制台输入一个数字,判断这个数字是不是一个质数
import java.util.Scanner;public class Three { // 从控制台输入一个数字,判断这个数字是不是一个质数 public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int number = scanner.nextInt(); // 1. 质数的判断:如果一个数字只能被1和自己整除,那么这样的数原创 2020-05-11 08:20:06 · 1495 阅读 · 0 评论 -
输出所有的水仙花数
public class Two { // 输出所有的水仙花数 public static void main(String[] args) { for (int number = 100; number < 1000; number++) { // 依次判断每一个数字是否是水仙花数 int b = number / 100; int s = number / 10 % 10;原创 2020-05-11 08:18:53 · 416 阅读 · 0 评论 -
从控制台输入两个英文字母,输出这两个英文字母之间的所有的字母(包含大小写)
import java.util.Scanner;public class One { // 从控制台输入两个英文字母,输出这两个英文字母之间的所有的字母(包含大小写) public static void main(String[] args) { // Scanner scanner = new Scanner(System.in); char a = scanner.nextLine().charAt(0); char原创 2020-05-10 18:10:01 · 2040 阅读 · 0 评论 -
Java循环标签
/** * break、continue: * 如果用在嵌套的循环中,只会对当前的循环生效。 * 如果希望在内层循环中,使用break、continue,作用于外层循环: * 配合循环标签使用,给外层循环添加上一个循环标签,使用break、continue配合标签使用。 */public class Keyword2 { public static void main(String[] args) { // 嵌套循环 // 循环标签:是原创 2020-05-10 18:05:52 · 108 阅读 · 0 评论 -
使用switch完成一个迷你计算器,从控制台输入要参与运算的数字,以及要进行的运算,输出结果
import java.util.Scanner;public class Four { // 使用switch完成一个迷你计算器,从控制台输入要参与运算的数字,以及要进行的运算,输出结果 public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 1. 输入一个操作数 System.out.println("请输入一个数字:")原创 2020-05-10 18:03:30 · 1184 阅读 · 0 评论 -
从控制台输入一个字符,如果这个字符是大写字母,转成小写字母输出;如果这个字符是小写字母,转成大写字母输出;如果不是字母,原义输出。
import java.util.Scanner;public class Two { // 从控制台输入一个字符,如果这个字符是大写字母,转成小写字母输出;如果这个字符是小写字母,转成大写字母输出;如果不是字母,原义输出。 public static void main(String[] args) { // 1. 从控制台输入一个字母 Scanner scanner = new Scanner(System.in); char c =原创 2020-05-10 18:01:47 · 3191 阅读 · 0 评论 -
从控制台输入一个数字,判断这个数字是不是一个水仙花数
import java.util.Scanner;public class One { // 1. 从控制台输入一个数字,判断这个数字是不是一个水仙花数 // 核心思路:将一个三位数字中的每一位提取出来 public static void main(String[] args) { // 1. 定义一个Scanner变量 Scanner scanner = new Scanner(System.in); // 2. 从控制台输入一个原创 2020-05-10 18:00:37 · 501 阅读 · 0 评论 -
Java通过利用switch的穿透性,解决:计算一个年月日,是该年的第几天
public class Switch3 { // 通过利用switch的穿透性,解决:计算一个年月日,是该年的第几天 public static void main(String[] args) { // 定义三个变量,分别来表示年月日 int year = 2020, month = 12, day = 31; // 定义一个变量,用来记录天数 int days = day; // 累加前几个月的天数和原创 2020-05-10 17:57:05 · 222 阅读 · 0 评论 -
Java赋值运算符
// 赋值运算符,是有运算结果的,赋值运算的结果,是赋值完成后,这个变量的值 System.out.println(10 + 20);//30 int x; System.out.println(x = 30);//30原创 2020-05-10 17:49:25 · 60 阅读 · 0 评论 -
Java位运算符
/** * 位运算符: * 将两个【整型数字】,求出【补码】(参与运算的都是补码)。将补码中的每一位进行类似于逻辑运算的操作。1相当于true,0相当于false。 * & | ^ ~ * << >> >>> * * ^ : 位异或,如果一个数字和另外一个数字异或两次,一定得到自己 */public class E { public static void main(S原创 2020-05-10 17:46:59 · 90 阅读 · 0 评论 -
Java逻辑运算符
/** * 逻辑运算符: * & | ! ^ * && || * 注意:false&&(不执行),遇假即假 * true||(不执行),遇真即真 */public class D { public static void main(String[] args) { // 逻辑运算符,是操作两个boolean变量进行运算的结果 // & : 与运算,两真即为原创 2020-05-10 17:44:53 · 118 阅读 · 0 评论 -
Java数据类型转换
强制数据类型转换 // 2. 强制类型转换案例: // 这个过程不能自动完成,需要强制完成 int c = 200; byte d = (byte)c; System.out.println(d); /* 128 + 64 + 8 0000 0000 0000 0000 0000 0000 1100 1000 在转型为byte的时候,只保留后8位。原创 2020-05-10 17:30:29 · 84 阅读 · 0 评论 -
斗地主发牌Java
斗地主发牌Java有三个游戏玩家,从控制台输入三个玩家的姓名。玩家手中能拿牌,牌有点数和花色。一共54张牌,随机分配每人17张牌,剩余3张底牌。每人手中的牌需要从小到大排序(点数相同,按照花色黑红梅方)大王>小王>2>A>K>Q>J>10>9>8>7>6>5>4>3选择一个人叫地主,得到3张底牌,并展示新的手牌import java.io.FileOutputStream;import java.io.I原创 2020-05-10 17:06:07 · 256 阅读 · 0 评论