java
文章平均质量分 75
张海玲
men proposes,god disposes.
展开
-
常见排序算法及java实现
排序算法时间复杂度和空间复杂度1. 冒泡排序基本思想:两个数比较大小,较大的数下沉,较小的数冒起来。过程:比较相邻的两个数据,如果第一个数比第二个数小,就交换位置。一直比较到最后两个数据。最终最小数被交换到n的位置,这样第一个最小数的位置就排好了。继续重复上述过程,依次将第2.3…n-1个最小数排好位置。java实现:public static void BubbleSort(int[] arr){ for(int i = 0;i<arr.length-1;i++){原创 2020-09-30 22:42:04 · 241 阅读 · 0 评论 -
【java】利用迭代器Iterator删除集合List中的元素
1 使用for循环删除list中的某个元素1.1 重复元素不相邻代码: public void testList(){ ArrayList<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < 5; i++) { list.add(i); } for (int i = 0; i < 5; i++) {原创 2020-08-30 20:52:11 · 11158 阅读 · 0 评论 -
【java】利用Set方法实现去重、排序
SetHashSet是Set接口的典型实现,大多数时候使用Set集合时就是使用这个实现类。HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。HashSet 允许有 null 值。HashSet是无序的,即不会记录插入的顺序。HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。必须在多线程访问时显式同步对 HashSet 的并发访问。代码package com.zhl;import java.util.*;/*原创 2020-08-25 19:13:10 · 1247 阅读 · 0 评论 -
【java】封装2——封装栈和队列
根据【java】封装1——封装一个超级数组的内容,封装栈和队列1.封装栈栈:先进后出MyStack.java代码package com.zhl.util;/** * 栈 先进后出 * 封装一个栈 */public class MyStack { private superArray superArray; public MyStack(){ superArray = new superArray(); } //压栈 压入栈顶 pub原创 2020-08-08 21:20:38 · 415 阅读 · 0 评论 -
【java】封装1——封装一个超级数组
1、封装在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。2、封装的优点良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进行更原创 2020-08-08 21:07:13 · 380 阅读 · 0 评论 -
【java】值传递 和 引用传递的区别和简单使用
1.基本数据类型存在栈内(如:int)。在main中定义变量,传递给别的方法时(如下swap1方法),传递的是该变量的一个副本,最终并没有改变main函数中的变量值。2.引用数据类型存在堆内(如:数组)。在main中定义变量(变量存于堆内),变量传递给别的方法时(如下swap2方法)是 在栈内执行指令,而该指令指向的是内存地址。如下代码中的main方法和swap2方法的变量传递都是指向内存地址,可以成功交换。代码如下:public class Transmit { public stat原创 2020-07-26 21:32:37 · 301 阅读 · 0 评论 -
玩转汉诺塔(hanoi)游戏
汉诺塔由来法国数学家爱德华·卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。4399益智小游戏——汉诺塔游戏描原创 2020-06-30 16:39:47 · 3453 阅读 · 0 评论 -
【java】队列(Queue)的基本使用
文章目录1.队列的基本介绍2.队列的基本用法3.实例1.队列的基本介绍队列是数据结构中比较重要的一种类型(是一种数据结构),它支持 FIFO,尾部添加、头部删除(先进队列的元素先出队列),跟我们生活中的排队类似。队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。注:队列是先进先出,栈是先进后出。(栈的使用)2.队列的基本用法import java.util.Queu原创 2020-05-13 22:47:46 · 3880 阅读 · 0 评论 -
【java】栈(Stack)的基本使用
文章目录1. 栈的基本使用2.实例(1)用两个栈实现队列(2)包含min函数的栈(3)栈的压入、弹出序列1. 栈的基本使用import java.util.Stack; //引用栈//初始化Stack<Integer> stack = new Stack<Integer>();//进栈stack.push(Element);//出栈stack.pop();...原创 2020-04-15 13:43:13 · 15219 阅读 · 0 评论 -
java 认识命令行参数
命令行参数就是main方法里面的参数String[] args,它就是一个数组,args只是数据类型的一个名称,即一个数组的变量。这是程序的入口点。一个简单小程序了解java 命令行参数代码如下:class test{ public static void main(String[] args) { for(int i=0;i&amp;lt;args.length;i++) ...原创 2018-11-22 20:30:51 · 303 阅读 · 0 评论 -
java读取文章实现分段落/分页
代码如下:import java.io.FileReader;import java.io.BufferedReader;import java.io.IOException;class ReadLine { public static void main(String[] args) throws IOException { FileReader fr = new FileR...原创 2018-11-19 18:54:35 · 3197 阅读 · 1 评论 -
java主函数调用方法中的变量
在主函数中定义一个变量,然后在方法调用并处理该变量,最后再在主函数中调用处理后的变量。我们来看如下的一段代码:class Demo1 { //方法(f=f+1) public static void add(int f) { f=f+1; System.out.println("经过处理的值:"+f); } //主函数 public static void ...原创 2019-04-09 22:16:33 · 9486 阅读 · 6 评论 -
java检测.txt文档出现某个字符串的次数
检测.txt文档出现某个字符串的次数。(这里以小说《南渡北归》为例,检测出现“我”、“梅贻琦”出现的次数)代码如下:import java.io.*;import java.util.Scanner;class StrCompare{ public static void main(String[] args) throws IOException,NullPointerExcept...原创 2018-11-12 18:38:16 · 1529 阅读 · 2 评论 -
java实现小说阅读器(功能:查看全文、统计总行数/总页码数、查找指定行、指定页码、实现翻页)
本次任务主要是实现在DOS窗口下,可以查看小说全文、小说全文总行数、查找指定行、查找指定页码内容代码如下:结果如下:原创 2018-12-09 22:55:09 · 6244 阅读 · 4 评论 -
java对文章字符出现个数进行统计排序(TreeMap排序)
文章目录1.介绍Map2.TreeMap排序2.1根据TreeMap的key值来进行排序2.1.1根据key值的升序排序(默认)2.1.2根据key值的降序排序2.2根据TreeMap的Value值来进行排序2.2.1根据Value值的升序排序2.2.2根据Value值的降序排序3.实例:对《西游记》中的字符进行降序排序任务所涉及到的排序问题,由于需要对文本字符及文字字符出现的次数进行排序,相当...原创 2019-01-27 17:38:21 · 1002 阅读 · 0 评论 -
java定义文章的难度系数
本文定义文章的难度系数为:平均句长难度系数+常用字难度系数。思路:(1)统计文章中。!?的数量来确定句子数,句子数除以总字符数即为平均句长,即可得到一个测评标准(句长);(2)保存一个常用500字.txt文档库,用需要判定的文章逐字与常用500字.txt文档进行比较,得到文章的常用字数量,再除以总字符数即可得到另一个测评标准(常用字比例);(3)设置对应的难度系数。注:(本次任务测试了...原创 2019-02-24 20:31:23 · 703 阅读 · 0 评论 -
java找出txt文本中最长/最短的句子,出现次数最多的句子,求平均句长,方差
找出文本中最长/最短的句子,出现次数最多的句子,求平均句长,方差。思路:(1)将文本按特定的方式进行切分(本文以。!?切分;(2)创建两个数组,数组1存放切分后每句话的长度,数组2存放切分后的每句话;(3)找最长句只需找到数组1中长度最长那一个,即可输出,最短同理;次数最多句子则需要遍历所有句子,找到相同的句子,对应的次数加1,最后输出次数最多那一个即可。(4)总字符长度除以总句子数即平...原创 2019-02-20 21:38:37 · 1161 阅读 · 0 评论 -
Java实现两个变量的互换(不借助第三个变量);加密应用
基本异或公式:A^B=B^A;(A^B)^A=A^(B^A)=B;(A^B)^A=A^(A^B)=B;1.通过位运算中的异或运算符(^)实现两个变量的互换。代码如下:class Switch { public static void main(String[] args) { int A=12,B=15; System.out.println("交换前:A:"+A...原创 2019-05-23 16:02:26 · 956 阅读 · 0 评论 -
计算绝对值表达式 |a-b|。(java自定义异常)
2.计算绝对值表达式 |a-b|完成一个 java application应用程序,完成一个计算绝对值表达式 |a-b|的功能。要求当b比a大时人为抛出一个自定义异常,在计算绝对值时通过异常捕捉机制完成此绝对值表达式的计算。代码如下:结果如下:...原创 2018-09-18 22:41:36 · 2900 阅读 · 0 评论 -
java读取txt文件出现中文乱码
在保证代码没有问题的前提下,读取txt文件出现了如下乱码。解决方法:1.查看文件代码的编码方式是否是ANSI(我使用的文本编辑器为EditPlus)2.查看.txt文件的编码方式是否是ANSI修改保存,结果如下...原创 2018-11-10 17:11:22 · 34808 阅读 · 7 评论 -
java定时器类Timer和多线程介绍及实例
任务要求:完成一个java application应用程序,使用定时器编程,在实时显示当前时间,每1秒时钟内容更新一次。完成一个java application应用程序,在应用程序主进程中新开一个线程,此线程进行死循环,每1秒被激活一次,激活时即在输出显示当前时间。完成一个java application应用程序,此应用程序公共类有一个double型类属性(变量)x,初始值为0;在应用程序...原创 2018-10-21 16:12:06 · 1777 阅读 · 2 评论 -
java 字符串操作
字符串的初始化赋值和输出原创 2018-10-09 20:45:03 · 30349 阅读 · 1 评论 -
java调用windows应用程序(如:输入1则调用运行windows记事本程序,输入2则调用运行windows画图程序)
import java.io.IOException;import java.util.Scanner; class TransferDemo { public static void main(String[] args) throws IOException { Scanner sc=new.Scanner(System.in); Sys...原创 2018-09-15 22:27:15 · 1048 阅读 · 0 评论 -
java实现日历功能
完成一个 java application应用程序,输出一份当前所在时区当前时间的一个月的日历(1号到28/29/30/31号,以及每天对应为星期几)。思路:(1)获得这一年是否是闰年。闰年的2月只有28天,非闰年2月有29天。其他1、3、5、7、8、10、12月每月31天,2、4、6、9、11每月30天。(2)根据上一步获得这个月的总天数。(3)获得这个月第一天是星期几。...原创 2018-09-16 14:36:52 · 9381 阅读 · 5 评论 -
java面向对象程序(利用函数,方法,继承等描述一个人类)
完成一个java application 应用程序,描述一个人类。要求如下:要求此人类必须包含有人的姓名、性别、出生日期等基本属性(变量)。要求此人类描述吃饭的方法(函数)和描述睡觉的方法(函数)。例如睡觉方法的执行体为一个 System.out.println() 函数,此函数输出一段例如“ xx(姓名)往床上躺倒,不久就睡着了……”之类的描述睡觉的文本。要求此人类的构造函数要具有无参...原创 2018-09-16 18:33:49 · 745 阅读 · 0 评论 -
java完成计算c=a/b 并输出结果 (java异常捕捉机制 )
完成一个 java application应用程序,完成c=a/b 的计算并输出c的结果,可以为a和b在程序中赋初值、或者接收用户通过键盘输入a和b的数值文本后转换为数字等,在程序要求当 b 为0时c的计算结果正确。代码如下:import java.util.Scanner;class CalculateDemo { public static void main(String[] ar...原创 2018-09-17 23:03:22 · 4994 阅读 · 0 评论 -
java通过键盘不断输入某门课程的成绩(利用异常处理解决当输入非法数字或非数字的字符串时提示输入不正确)
java接收用户通过键盘不断输入表示某门课程的成绩的字符串(按回车为一个字符串结束),当输入非法数字(输入值小于0或大于100)时提示成绩输入有误,当输入为非数字的字符串时提示输入格式不合法。程序如下:import java.util.Scanner;class cuowuException extends Exception //自定义异常类,继承Exception类{ public...原创 2018-09-20 07:25:35 · 5934 阅读 · 1 评论 -
java通过键盘输入用户名和密码,正确则提示用户登录成功,否则抛出异常并结束程序
完成一个 java application应用程序,通过赋初值或接收用户通过键盘输入的方式为表示用户名和密码的两个String类对象赋值,然后进行判断,如果用户名或密码为null,抛出自定义异常并结束程序;如果输入密码长度小于6个字符,抛出自定义异常并结束程序;如果用户名和密码不等于事先指定的字符串,抛出自定义异常并结束程序;否则输出提示“用户登录成功”。程序如下:结果如下:...原创 2018-09-20 23:04:44 · 34999 阅读 · 0 评论 -
java文件操作 (1)——判别指定文件是否存在,读取文件修改时间和大小,读取文本文件内容,向文本文件中写入指定内容
文章目录1.新建一个文档,名为zhl.txt2.判别指定路径下指定文件名的文件是否存在。(例如文件:E:/java task/zhl.txt)3.如果指定文件存在,读取并分别显示其修改时间和文件大小等属性。4.以文本方式打开某一指定路径指定文件名的文本文件,读取其内容并显示。(读取E:/java task/zhl.txt中的内容并显示)5.以文本方式向某一指定路径指定文件名的文本文件写入指定文本内...原创 2018-09-23 16:42:34 · 2869 阅读 · 0 评论 -
java文件操作(2)——读取.txt文件的指定行,并确定该行的字符数
读取.txt文件的指定行,并确定该行的字符数。代码如下:import java.io.*;import java.util.Scanner;public class ReadFile2 { //输出本行内容及字符数 static void readLineVarFile(String fileName, int lineNumber) throws IOE...原创 2018-09-28 23:04:47 · 14740 阅读 · 8 评论 -
java通过键盘输入文本,动态保存字符串(把每次回车输入的字符串动态加入到Vector类对象中,显示此Vector类对象中存储的字符串)
Vector类实现了一个动态数组。和ArrayList和相似,但是两者是不同的:(1)Vector是同步访问的。 (2)Vector包含了许多传统的方法,这些方法不属于集合框架。 Vector主要用在事先不知道数组的大小,或者只是需要一个可以改变大小的数组的情况。Vector类支持4种构造方法。 第一种构造方法创建一个默认的向量,默认大小为10:Vector()第二种构造方法...原创 2018-09-14 22:46:28 · 1124 阅读 · 0 评论 -
java 程序输出当前时间(年月日小时分秒星期几)
程序如下:import java.util.Date;class DateDemo { public static void main(String[] args) { Date date=new Date(); //初始化Date对象 System.out.println(&quot;当前时间为:&quot;+date.toString()); //使用t...原创 2018-09-13 21:58:15 · 6331 阅读 · 0 评论 -
实现JAVA基本计算方法的应用任务(1)——累加,输出随机数,排序,求交并补集
实现 JAVA基本计算方法的应用任务如下:A. 编程实现1+2+3+…+100源代码如下:class Task1//定义一个类{ //主函数 public static void main(String[] args) { int i=1; int sum=0; while(i&amp;amp;lt;=100) ...原创 2018-04-21 17:17:15 · 734 阅读 · 0 评论 -
JAVA基本计算方法和文件读取的应用(2)——命令窗回显
A. 编程实现一个命令窗程序,使得:输入“A”则在屏上回显“Your input is A”输入“我”则在屏上回显“Your input is 我”等等。输入ByeBye则退出程序.源代码如下:import java.util.Scanner;//导入这个包class Task1{ public static void main(String[] args)...原创 2018-04-29 12:23:30 · 303 阅读 · 0 评论 -
用java语言查询读出一个SQLite数据库文件中的数据
1.java语言连接到SQLite数据库文件上并打开数据库在 Java 程序中使用 SQLite 之前,我们需要确保机器上已经有 SQLite JDBC Driver 驱动程序和 Java。 从 sqlite-jdbc 库下载 sqlite-jdbc-(VERSION).jar 的最新版本。 在class 路径中添加下载的 jar 文件 sqlite-jdbc-(VERSION).jar,...原创 2018-05-11 17:14:56 · 1774 阅读 · 0 评论 -
JAVA编程实现郑码查询(1)——将码表放在文本文件.txt和.sqlite数据库中
方法一:将码表放在一个文本文件中,如zmb.txt,实现该功能。程序代码如下:import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;import java.util.Scanner;class Task { public static void main(St...原创 2018-05-12 01:03:04 · 292 阅读 · 0 评论 -
用JAVA程序操作MySQL数据库
基本要求1.JAVA与MySQL数据库进行连接,必须安装好JDK和MySQL,这部分是最基础的,已经安装好就不做过多赘述。 2.添加JDBC驱动程序包 mysql-connector-java-5.1.44.zip(这个是最新版本),然后将其解压到任意目录,我解压到的是E盘,然后将其目录下的mysql-connector-java-5.1.44-bin.jar添加到classpath里面...原创 2018-05-18 22:40:55 · 11563 阅读 · 3 评论 -
JAVA编程实现郑码查询(2)——将码表放在mysql数据库中
打开小小输入法的郑码表观察,如 a 一 再 aa 一下 aaam 万无一失 aaav 可歌可泣 aaax 天下无难事 aacf 百无聊赖 aacm 无可奉告 aadj 无可挽回 aadt 殊死搏斗 aaeu 平型关 aaez 一开始 。。。 编程实现一个命令窗程序,使得能进行郑码查询,如输入aacm,则输出“无可奉告”。(方法:将码表放在一个mysql数据库中。) 代...原创 2018-05-19 15:15:47 · 519 阅读 · 0 评论 -
java通过接收键盘输入的文本,统计并输出此段文本字符的个数
程序如下import java.util.Scanner; class Count { public static void main(String[] args) { Scanner scan = new Scanner(System.in); //从键盘接收数据 System.out.println("请输入:");//输出函数 ...原创 2018-09-12 09:39:41 · 718 阅读 · 0 评论 -
java计算执行十亿次空循环所需要的时间(用System.currentTimeMillis()方法获取时间戳)
代码如下:class runtime { public static void main(String[] args) { String str=&quot;&quot;; long starTime=System.currentTimeMillis(); //定义一个开始时间 //计算循环十亿次的时间 for(int i=0;i...原创 2018-09-12 23:15:04 · 1161 阅读 · 0 评论