自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 UDP多人群聊

centerTextArea.append(p.getAddress().getHostAddress()+":"+((InetSocketAddress)p.getSocketAddress()).getPort()+"对我说:\n"+new String(p.getData(),0,p.getLength())+"\n\n");JOptionPane.showMessageDialog(Liao.this, "出错了,发送不成功");stateLB.setText("已在"+port+"端口监听");

2023-12-25 23:15:10 887

原创 TCP通讯

System.out.println("A说:"+mr);System.out.println("服务端已启动等待连接");System.out.println("B说:"+mr);System.out.println("连接成功!System.out.println("连接成功!1.ChatSocketServer类。2.ChatSocketClient类。* 用于接收对方消息。* 用于接收对方消息。三,结果(先服务 再客户)* 用于发送消息线程类。*用于接收消息线程类。

2023-12-25 23:14:26 795

原创 第二十一章 网络通信

1.交换二维数组代码:结果:2.查询成绩代码:结果:

2023-12-25 23:13:31 344

原创 20-多线程

这种多线程的程李通常会爱生问题,以大车站售票系统为例,在代码中判断当前票数是否大于 0,如果大于0则执行蕊该票出售绘乘客的功能,但当两个线程同时访问这段代码时(假如这时只剩下一张票),第一个线稳蒋票售出,与此同时第二个线程也已经执行完成判断是否有票的操作,并得出票数大于0的结论,是它也获行售出操作,这样就会产生负数。如果当前某程序为多线程程序,假如存在一个线程 A,现在需要插入线程 B,并要求线程B免行完毕,然后再继续执行线程 A,此时可以使用 Thread 类中的join0方法来完成。

2023-12-25 23:11:21 942

原创 拼图小游戏

", "拼图完成", JOptionPane.INFORMATION_MESSAGE);原文链接:https://blog.csdn.net/2302_76552038/article/details/135185396。System.out.println("不能移动这个数字,请重新输入。System.out.print("请输入要移动的数字(1-8): ");System.out.println("恭喜你,拼图完成!// 交换空白格和要移动的数字的位置。// 寻找要移动的数字的位置。

2023-12-25 23:08:30 794

原创 王者荣耀java版

作用:初始化基本变量,定义addHp()方法,两点之间的距离方法,矩形与矩形的碰撞检测方法,矩形与圆形的碰撞检测方法,定义防御塔,英雄,小兵的攻击方法,用线程实现攻击的冷却时间。setImg("C:\\Users\\23839\\IdeaProjects\\HonorOfKings\\src\\imgs\\beast\\红隼.jpg");setImg("C:\\Users\\23839\\IdeaProjects\\HonorOfKings\\src\\imgs\\beast\\蜥蜴.jpg");

2023-12-25 23:06:20 329

原创 JAVA小游戏“飞翔的小鸟”

原文链接:https://blog.csdn.net/2302_76552038/article/details/134632986。版权声明:本文为CSDN博主「新一」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。再创建一个包 来存储照片。

2023-12-25 23:04:03 775

原创 第十九章Java绘图

9.1.1——Graphics类Graphics类是所有图形上下文的抽象基类,它允许应用程序在组件以及闭屏图像上进行绘制,Graphics类封装了Java支持的基本绘图操作所需要的状态信息,主要包括颜色,字体,画笔,文本,图像等。Graphics 类提供了绘图常用的方法,利用这些方法可以实现直线、矩形、多边形、椭圆、圆弧等意状和文本、图片的绘制操作。另外,在执行这些操作之前,还可以使用相应的方法设置绘图的颜色和字体等状态属性。19.1.2——Graphics2D类。

2023-12-25 23:00:47 936

原创 Java实现俄罗斯方块游戏

然后是方块本身,尽管它们的形状不统一,但是它们可以用一个4X4比例的方块所包围,因此用16个字节就可以把一个 方块的信息保存者,//有方块的地方变为绿色。if (data[m + 1][n] == 1)// 如果下一个地方有方块,则直接返回false。// 所有的方块类型,用16个字节来存储,俄罗斯方块图形都是在4*4格子里。if (data[i][j - 1] == 1) {//如果左移一格有方块时。if (allRect[i] == rect)//找到下落的方块对应的形状,然后进行形状改变。

2023-12-25 22:57:30 869

原创 18章总结—Swing程序设计

System.out.println(c1.getText() + "按钮选中状态:" + c1.isSelected());System.out.println(c2.getText() + "按钮选中状态:" + c2.isSelected());System.out.println(c3.getText() + "按钮选中状态:" + c3.isSelected());

2023-12-25 22:54:29 771

原创 第十六章总结

System.out.println("返回值为:" + method.invoke(demo, "7", 5));System.out.println("返回值为:" + method.invoke(demo, parameters));System.out.println("在执行方法时抛出异常," + "下面执行setAccessible()方法!i++) { // 遍历构造方法。System.out.println("修改前的值为:" + field.get(example));

2023-12-25 22:45:24 767

原创 枚举类型与泛型

泛型的类型参数只能是类类型,不可以是简单型,如A<int>这种泛型定义就是错的泛型的类型个数可以是多个可以使用extends关键字限制泛型的类型可以使用通配符限制泛型的类型版权声明:本文为CSDN博主「新一」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/2302_76552038/article/details/134516880。

2023-12-25 22:43:17 781

原创 第十五章---I/O(输入/输出)

15.1输入输出流流是一组有序的数据序列,根据操作的类型,可分为输入流和输出流两种。I/O(Input/Output,(输出)流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。虽然 I/O 流疆盘文件存取有关,但是程序的源和目的地也可以是键盘、鼠标、内存或显示器窗口等。Jaa 语言定义了许多类专门负责各种方式的输入/输出,这些类都被放在java.io 包中。其中输入流类都是抽象类input stream(字节输入流)或抽象reader(字符输入流)的子类;

2023-12-25 22:38:06 853

原创 17章总结

JDBC是一种可用于执行SQL语句的Java API(Application Programming Interface,应用程序设计接口),是连接数据库和Java应用程序的纽带。原文链接:https://blog.csdn.net/2302_76552038/article/details/134516738。此接口用来动态地执行SQL语句,通过实例执行的动态SQL语句,将被预编译并保存到实例中,从而反复的执行该SQL语句。这个接口代表与特定的数据库的连接,在连接上下文中执行SQL语句并返回结果。

2023-12-25 20:14:51 326

原创 lambda表达式

一:lambda表达式lambda表达式可以用非常少的代码实现抽象方法。lambda 表达式不能独立执行,因此必须实现函数式接口,并且会返回一个函数式接口的对象。语法格式如下:() -> 结果表达式参数 -> 结果表达式(参数1,参数2,...,参数n) -> 结果表达式二.lambda 表达式实现函数式接口lambda表达式可以实现函数式接口,本节将讲解函数式接口概念以及用 lambda 表达式实现不同类型的函数式接口。1.函数式接口。

2023-12-25 20:14:06 761

原创 学生管理系统数据库版

insert into student values(1,"李盼盼",13928376253,"男"),(2,"李萍萍",18276373453,"女"),(3,"王明",12734647499,"男"),(4,"小明",13963547382,"男"),(5,"李华",19283746573,"女"),(6,"李四",18236455748,"男"),(7,"王五",17364537288,"男"),(8,"张三",18236473838,"男"),

2023-10-15 19:15:10 66

原创 学生选课系统

学生选课系统:完成的步骤。

2023-10-15 19:12:37 28

原创 实现炸金花

System.out.println("玩家" + flag + "和" + flag2 + "的牌一样大");System.out.println("玩家" + flag + "的牌最大");System.out.println("三个玩家的牌一样大");System.out.println("玩家1:");System.out.println("玩家2:");System.out.println("玩家3:");

2023-10-15 19:09:41 21

原创 第十二章集合类

集合类与数组的不同之处是:数组的长度是固定的,集合的长度是可变的;数组用来存放基本类型的数据,集合用来存放对象的引用。

2023-09-17 19:26:35 33

原创 第三篇复习

在上面的代码中,我们首先抛出一个新的Exception对象,然后在捕获该异常时,我们创建一个新的Exception对象,并将原始的异常对象作为第二个参数传递给构造函数。然后我们重新抛出这个新的异常。虽然使用 + 运算符能够达到附加新字符或新字符串的目的,但是 + 运算符是产生一个新的String实例,创建一个新的字符串对象,如果大量的对字符串进行修改,会极大的增加系统开销。总的来说,Java中的字符串之所以具有不变性,是因为其底层结构是基于字符数组实现的,并且操作字符串时是通过创建新的字符串来实现的。

2023-09-17 19:20:39 27

原创 第二篇复习

继承是指子类可以继承父类的属性和方法,并且可以在子类中添加新的属性和方法或者重写父类的方法。定义一个Shape类作为父类,定义一个Circle类和一个Rectangle类作为子类,它们都重写了Shape类的draw方法。定义一个Animal类作为父类,定义一个Dog类作为子类,Dog类继承了Animal类的属性和方法。继承:通过extends关键字实现继承,子类继承了父类的属性和方法,并可以添加自己的属性和方法。封装:通过访问修饰符将类的属性和方法隐藏起来,外部无法直接访问,提高了代码的安全性和可维护性。

2023-09-17 19:16:43 22

原创 第一篇复习

赋值运算符: 用于给变量赋值,包括 =(赋值)、+=(加等于)、-=(减等于)、*=(乘等于)、/=(除等于)和 %=(模等于)。位运算符: 用于按位操作二进制数据,包括 &(按位与)、|(按位或)、^(按位异或)、~(按位非)、<<(左移)和 >>(右移)。=(不等于)、<(小于)、>(大于)、<=(小于等于)和 >=(大于等于)。概念: 在Java中,数组是一种可以存储固定大小的同类型元素的数据结构。算术运算符: 用于数学运算,包括 +(加法)、-(减法)、*(乘法)、/(除法)和 %(取模)。

2023-09-17 19:13:34 23

原创 炸金花代码

System.out.print("第一个人的牌:");System.out.print("第二个人的牌:");System.out.print("第三个人的牌:");System.out.println("买牌");System.out.println("洗牌");System.out.println("发牌");l.add("红桃");l.add("黑桃");l.add("方片");l.add("梅花");public class 炸金花 {package 课本;

2023-09-17 19:09:16 145

原创 第五章总结

注意这里与冒泡排序的区别,不是交换相邻元素,而是把满足条件的元素与指定的排序位置元素交换(如从最后一个元素开始排序),这样排序好的位置逐渐扩大,直至整个数组都变成已排序好的格式。声明数组后,还不能立即访问它的任何元素,因为声明数组只是给出了数组名字和元素的数据类型,要想真正使用数组,还要为它分配内存空间。基本思想:对比相邻的元素值,如果满足条件就交换元素值,把较小的元素移动到数组前面,把较大的元素移动到数组后面(也就是交换两个元素的位置),这样较小的元素就像气泡一样从底层上升到顶部。例:int[ ] a;

2023-06-12 19:13:53 21

原创 java的第五次作业

1.交换二维数组代码:结果:2.查询成绩代码:结果:

2023-06-12 19:12:22 27

原创 第四章总结

switch语句中表达式的值必须是整型、字符型、字符串类型或枚举类型,常量值1~n的数据类型必须与表达式的值的类型相同。过程:1->2->条件真->2->条件真->...->2->条件假->3。过程:1->条件真->2->...条件真->2->条件假->3。(2)do...while循环嵌套while循环。3->条件2真->...->3->条件2真->3->条件2真->...->3->条件2真->2->条件1真->3->...->条件1真。->3->条件1假->4->条件2假->5。

2023-06-12 19:09:37 23

原创 数据类型转换

在把高精度的变量的值赋给低精度的变量时使用。除boolean类型外,其他基本类型都能以显式类型转换的方法实现转换。按精度从低到高排序的顺序为byte<short<int<long<float<double。指从低级向高级类型的转换,系统会自动执行,程序员无须进行任何操作。过程: (1)首先分别定义各个类型的变量,并赋上相应的值。类型转换是将一个值从一种类型更改为另一种类型的过程。1.隐式类型转换(自动类型转换)(2)再将各个类型的运算结果输出。2.显式类型转换(强制类型转换)(3)最后得到最终结果。

2023-06-12 19:03:28 47

原创 java流程控制

do...while循环语句与while循环语句相似,它们之间的区别就是while语句先判断条件是否成立再执行循环体,而do...while语句则先执行一次循环后再判断条件是否成立。switch(g) {//使用switch判断数字,如果输入的值满足对应的case则输出对应的语句。System.out.println("抱歉,我们店暂时没有这么大的包厢");System.out.println("密码正确,欢迎登录");System.out.println("回答"+count+"人");

2023-06-12 19:01:09 34

原创 第四次java作业

else if(true==a.equals("艺术类本科") ){//判断所输入的数据是否正确,正确则输出以下语句,不正确则执行下一个if语句。}else if(true==a.equals("体育类本科") ){//判断所输入的数据是否正确,正确则输出以下语句,不正确则执行下一个if语句。}else if(true==a.equals("民办本科") ){//判断所输入的数据是否正确,正确则输出以下语句,不正确则执行下一个if语句。default: System.out.println("输入错误!

2023-06-12 18:53:42 33

原创 第三次java作业

2023-06-12 18:49:54 25

原创 java语言基础

逻辑运算符:逻辑运算符包括&(&&(逻辑与)),||(逻辑或),!6.”按位与“运算的运算符位”&“,为双目运算符,”按位与“运算的运算法则是:如果两个整形数据a,b对应位都是1,则结果位才是1,否则为0,如果两个操作数的精度不同,则结果的精度和及精度高的操作数相同。如果最高位是1,右移空的位就填入1。7.”按位或“运算的运算符为”|“,为双目运算符,”按位或“运算的运算规则是:如果两个操作数对应位都是0,则结果位也是0,否则为1,如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。

2023-06-12 18:45:25 42

原创 第二次Java作业

2.再输入一个字符型数值c2,找到Unicode转义字符中对应的字符代码,3.输出Unicode值的代码,使用空格在各行排列出想要的形状并换行。5.运行代码,得到如图所示。输入一个字符型数值c1,

2023-06-12 18:41:52 29

原创 java第一次作业

作业3。

2023-06-12 18:40:59 33

原创 第九章总结

Java语言的异常捕获结构有try,catch,finally3部分组成,其中,try语句块存放的是可能发生异常的Java语句:catch语句块在try语句块之后,用来激发被捕获的异常;finally语句块是异常处理结果的最后执行部分,无论try语句块中的代码如何退出,都执行finally语句块。(c)如果在当前抛出异常的方法中处理异常,可以使用try-catch语句块捕获并处理,否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作。

2023-06-09 22:56:57 30

原创 第十章总结

虽然使用“+”可以达到附加新字符或字符串的目的,但“+”会产生一个新的 String 实例,会在内存中创建新的字符串对象。正则表达式中的元字符及其v。通过该方法的多个重载形式,可实现接受任何类型的费据,如int、boolean、char、String、double 或者另一个字符串生成器等。System.out.println("现在是:"+hour+"时"+minute +"分"+second + "秒");2.即使两个字符串的内容相同,两个对象的内存地址也是不同的,使用比较运算符仍然会返回false。

2023-06-09 22:56:45 48

原创 java核心技术复习

一个对象成为垃圾后会被暂时的保留在内存中,当这样的垃圾堆积到一定程度时java虚拟机就会启动垃圾回收器将这些垃圾回收外从内存中释放,从而使程序获得更多的可用内存空间,除了等待java虚拟机进行垃圾回收外 还可以通过调用System.gc()方法来通知java虚拟机立即进行垃圾回收,当一个对象在内存中被释放时 他的finalize()方法被自动调用,因此可以在类中通过定义finalize()方法来观察对象何时被释放。在面向对象的思想中最核心的就是对象,为了在程序中创建对象,首先需要定义一个类。

2023-06-09 22:54:25 17

原创 第十章总结-常用库类

前面介绍了 Java 中的包装类,对于数值型的包装类,它们有一个共同的父类一Number 类,该类是一个抽象类,它是 Byte、Integer、Short、Long、Float 和 Double 类的父类,其子类必须提供将表示的数值转换为 byte、int、short、long、float 和 double 的方法。Double类和Float 类是对 double、float 基本类型的封装,它们都是Number 类的子类,都是对浮点数进行操作,所以常用方法基本相同,本节将对 Double 类进行讲解。

2023-06-09 22:54:22 57

原创 包和内部类

Java中每个接口或类都来自不同的类包,无论是Java API中的类与接口还是自定义的类与接口,都需要隶属于某一个类包,这个类包包含了一些类和接口。我们在前面的学习过程中,在一个文件中定义两个类,则其中任何一个类都不在另一个类的内如股票在类中再定义一个类,则将在类中再定义的那个类中称为内部类。在使用import关键字时,可以指定类的完整描述,如果为了使用包中更多的类,可以在使用import关键字指定时在包指定后加上*,这表示可以在程序中使用该包中的所有类。解决这类问题的办法是将这两个类放置在不同的类包中。

2023-06-07 14:28:42 20

原创 java第七次作业

System.out.println("将智能手机的默认语言设置为"+defaultLanguage);public changephonelanguage(String defaultLanguage) {//主方法。System.out.println("智能手机的默认语言为英文");public static void main(String[] args) {//主方法。public changephonelanguage() {//主方法。九:人工包装的水果与普通水果的价格。

2023-06-07 14:25:20 15

原创 dog练习题

一。二。

2023-06-07 11:58:09 25 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除