java
张文琪2024
若是命运注定,我必逆天改命。
展开
-
Java泛型简述
泛型的特点:声明泛型时的位置特殊,用<>来声明使用方法与其他变量类型没有太大差异主要作用是可以让不同的变量类型进行统一操作,包括引用数据类型和对象与Object相比的好处有:不需要强制类型转换,提高效率;编译时较安全带泛型的方法://参数可以接收任何数据类型的数组public static <E> void print(E[] arrays){ ...原创 2019-11-26 11:33:49 · 221 阅读 · 1 评论 -
Java类、方法与接口
java中如果没有类与对象就不能叫java了类与方法的声明:类的组成: [修饰符] class 类名 { 属性。。。 方法。。。 }方法的组成: [修饰符] 返回值类型 方法名([参数1][参数2]......){方法体}例如: public class Alei{ pu原创 2016-01-15 19:14:42 · 1089 阅读 · 0 评论 -
JAVA MD5 加密与解密
package test;import java.security.MessageDigest;public class Test { /*** * MD5加码 生成32位md5码 */ public static String string2MD5(String inStr){ MessageDigest md5 = null;转载 2016-08-31 16:40:14 · 3365 阅读 · 4 评论 -
IDEA开发工具中添加Tomcat并部署项目
参考视频地址: http://pan.baidu.com/s/1boLcQpp原创 2016-08-04 17:10:09 · 599 阅读 · 0 评论 -
JAVA生成随机ID(UUID)
生成随机ID,经常在添加数据到数据库中使用public static String getUUID(){ UUID uuid=UUID.randomUUID(); String str = uuid.toString(); String uuidStr=str.replace("-", ""); return uuidStr;原创 2016-09-26 14:23:38 · 40913 阅读 · 3 评论 -
JAVA——判断多选题的对错
这几天再给学校里做一个考试系统,有选择题、判断题和多选题,前两个题型判断比较容易,但是在多选题上就卡壳了。要求是正确答案在三个及以上,考生输入的两个及以上正确答案挣1分。全对挣1.5分。由于是web端的考试系统所以获取到的考生答案和正确答案均为字符串数组代码如下:package demo;import java.util.Arrays;public class MultSelectTest {原创 2016-10-15 11:22:43 · 8286 阅读 · 5 评论 -
Java 除去List中重复的元素
直接调用方法:public List remove(List list) { List list_tmp = new ArrayList(); for (Object obj : list) { if (!list_tmp.contains(obj)) { list_tmp.add(obj);原创 2016-11-14 16:32:51 · 398 阅读 · 0 评论 -
Java导成exe文件
exe4j软件下载地址: http://pan.baidu.com/s/1qY1wite具体操作过程: http://www.jb51.net/article/44392.htm注:亲身试验过,能用原创 2016-12-04 12:10:46 · 471 阅读 · 0 评论 -
Java——导出数据到excel表(Poi方式)
导出数据到xls格式的excel表jar包下载地址 http://download.csdn.net/detail/zhengyikuangge/9700556导出数据到xls格式的excel表 // 声明一个工作薄 HSSFWorkbook wb = new HSSFWorkbook(); // 声明一个sheet并命名 HSSFSh原创 2016-12-03 11:07:19 · 1717 阅读 · 0 评论 -
Java List排序 (包括对象List排序)
常见数据类型List直接把需要排序的list当做参数调用下列方法即可Collections.sort(list);//升序排列Collections.sort(list,Collections.reverseOrder());//降序排列对象List举例:Student.java(一个简单的实体类)public class Student { private String id;原创 2016-11-22 23:38:34 · 1074 阅读 · 0 评论 -
Java——调用命令行执行命令后到Java控制台显示
//通用方法,只需要将要执行的命令当做实参传入即可public static void exeCmd(String commandStr) { BufferedReader br = null; try { Process p = Runtime.getRuntime().exec(commandStr);转载 2016-12-07 23:13:43 · 2603 阅读 · 0 评论 -
Java——线程简介
在用线程之前,要明白线程是什么和为什么使用线程的问题 何为线程?执行一个main方法(main方法中没有其他的线程)即是一个主线程。 为何使用线程?当然是为了满足需求,例如使用java做一个对话功能,A可以找B聊天,A也可以找C聊天,这时候就可以创建分别创建两个线程,每个线程放一个聊天过程。然后就开始研究如何使用线程。最常用的方法中规中矩线程的写法中断线程的方法线程常用方法最常用的方法:n原创 2016-12-25 23:50:53 · 549 阅读 · 0 评论 -
Java——根据日期返回周几
/** * 判断当前日期是星期几<br> * <br> * @param pTime 修要判断的时间<br> * @return dayForWeek 判断结果<br> * @Exception 发生异常<br> */ public static int dayForWeek(String pTime) throws Exception转载 2016-12-14 19:19:19 · 1487 阅读 · 0 评论 -
使用Java模拟鼠标重复点击
今天闲来无事,玩了一会小游戏发现游戏中有许多需要鼠标重复点击的操作再加上以前也听说过java可以模拟鼠标点击,所以研究了一个小时左右,自己写了一个小程序。思路比较清晰,即先获取当前鼠标点击的坐标,然后再进行模拟鼠标点击。获取鼠标点击坐标在网上有许多是关于swing可视化界面的,这个地方花了比较长的时间。模拟鼠标点击自然就是使用robot。前台界面用的swing,逻辑方面使用了线程与定时器。不依靠可视原创 2017-05-02 19:56:38 · 25490 阅读 · 2 评论 -
DBCP建立数据连接池
数据库连接池负责分配,管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是重新建立一个导入jar包新建dbcpconfigproperties文件建立工具类代码导入jar包DBCPjar包: http://download.csdn.net/download/zhengyikuangge/9946326 数据库连接jar包(mysql): http://download原创 2017-08-23 15:03:39 · 435 阅读 · 0 评论 -
JAVA读取xls文件和xlsx文件
所需jar包:下载地址: http://download.csdn.net/detail/zhengyikuangge/9533831xls和xlsx文件:office2007以后版本为xlsx,以前的版本为xls读取xls文件:public List<Student> readXls(File file) throws IOException { InputStream is =原创 2016-05-28 14:09:39 · 38598 阅读 · 9 评论 -
Swing超基础学习总结——6、JTable和JScrollPane
Swing超基础学习总结最后一篇JTable初始化初始化方法1初始化方法2添加删除数据步骤1先获取model步骤2执行相应操作完整代码初始化方法1JTable初始化: 注:初始化方法很多,在这里只演示两种方法;使用TableModel时建立用DefaultTableModel初始化方法1:JFrame frame = new JFrame();String[] columnNames原创 2016-08-29 09:37:58 · 5618 阅读 · 0 评论 -
Swing超基础学习总结——5、菜单(JMenu、JMenuBar、JMenuItem)
名词解释代码演示名词解释 红框即JMenuBar(标题栏),篮框即JMenu(菜单名),黑框即JMenuItem(菜单项)代码演示public static void main(String[] args) { // TODO Auto-generated method stub JFrame frame = new JFrame(); frame原创 2016-08-28 20:20:55 · 9118 阅读 · 0 评论 -
通过jdbc实现对数据库中数据的增删查改操作
原始的东西该理解还是要理解需要一个连接数据库的jar包(这里用的是MySQL): http://download.csdn.net/detail/zhengyikuangge/9406895直接上代码:public class ValueDao { public String DRIVER = "com.mysql.jdbc.Driver"; //mysql驱动...原创 2016-01-17 11:23:31 · 807 阅读 · 0 评论 -
【娱乐】判断从java控制台输入的是否为回车
不一样的输出方式~~原创 2015-12-20 14:36:54 · 9658 阅读 · 1 评论 -
JAVA基于TCP和UDP的网络连接
TCP:需要经历“三次握手”建立连接后,发送数据客户端:public class ClientSocket { public static void main(String[] args) throws Exception { Socket so = new Socket("localhost", 88); // 创建Socket用户,第一个参数为本地IP,第原创 2016-03-29 08:59:34 · 1979 阅读 · 2 评论 -
JAVA求前一天的日期
Calendar calendar = Calendar.getInstance();// 获得日历对象calendar.setTime(new Date());// 先设置为当前时间calendar.add(Calendar.DAY_OF_YEAR, -1);// 再次设置日历时间Date bf = new Date();bf = calendar.getTime();// 新的日原创 2016-02-24 19:42:29 · 524 阅读 · 0 评论 -
JAVA输出日历(整合代码)
①依靠算法实现: public static void main(String[] args) { System.out.println("欢 迎 使 用 万 年 历"); Scanner input = new Scanner(System.in); System.out.print("\n请选择年份: "); int yea转载 2016-04-25 19:33:55 · 6582 阅读 · 0 评论 -
Java概念和理论的理解(总结)
①高内聚,低耦合:首先要知道一个软件是由多个子程序组装而成, 而一个程序由多个模块(方法)构成! 而内聚就是指程序内的各个模块之间的关系紧密程度, 耦合就是各个外部程序(子程序)之间的关系紧密程度. 所以: 为什么要高内聚? 模块之间的关系越紧密,出错就越少! 为什么要低耦合? 子程序间的关系越复杂,就会产生更多的意想不到的错误!会给以后的维护工作带来很多麻烦!原创 2016-04-27 09:35:57 · 446 阅读 · 0 评论 -
java中static详解
static修饰变量:可以理解为把变量变成全局变量;静态变量不能在方法中声明;构造函数的实参必须是静态。static修饰方法:静态方法不能用this;静态方法可以被非静态方法调用;静态方法中只能调用静态方法和静态变量,若非要调用非静态方法,则需要在类的属性中声明一个静态变量或者在该静态方法中声明一个非静态变量去调用非静态方法;由static修饰的方法可以用【类名.方法名】直接调用 。原创 2015-12-01 16:24:47 · 542 阅读 · 0 评论 -
Java之IO流
名词理解:(一)首先要明白何为输入流、输出流、字节流、字符流①输入与输出:②字节与字符:字节流:以字节为单位读取数据 字符流:以字符为单位读取数据(二)然后四个互相结合就有了:输入字节流、输出字节流、输入字符流、输出字符流。(三)辨别输入流、输出流、字节流、字符流:①类名中有In的为输入流,有Out的为输出流②类名以Stream结尾的为字节流③类名以Reader或Writer结尾,并且里面没有St原创 2016-05-04 11:32:13 · 430 阅读 · 0 评论 -
JAVA clone的简单理解
在编程的时候会碰到一个很无解的问题:比如现在有两个对象,一个对象改了某个属性后,有可能另一个对象也跟着变了。如以下代码: A.java:private String name = ""; public String getName() { return name; } public void setName(String name) { this原创 2016-06-01 10:10:00 · 393 阅读 · 0 评论 -
JAVA 求中文首字母(大小写)
从别地方淘来的代码,经测试可用public class ChinaInitial { /** * 测试代码 * * @param args */ public static void main(String[] args) { String str = "精英班1401"; System.out.println("中文转载 2016-06-04 14:41:42 · 1378 阅读 · 0 评论 -
正则表达式——JAVA与JS中的使用
一、JAVA:Pattern p = Pattern.compile("");// 匹配的表达式Matcher m = p.matcher("");// 被匹配的变量或数据m.matches();// 若匹配返回true,不匹配返回false二、JSvar test = "";//被匹配的变量或数据var reg = /^[1-9]\d{4,8}/;//匹配的表达式,注意正则表达式用原创 2016-06-08 11:46:29 · 2405 阅读 · 0 评论 -
获取每小时的天气
如今网上天气API非常多,我找了很长时间,发现了一个比较不错的API易用天气:http://www.yytianqi.com/完全免费,只不过每小时限制访问次数,30次每小时,应该够用了①进入官网后点击“API介绍” ②参照URL的例子: 关于参数city和key如何设置,页面上都有很详细的解释③数据解析(推荐用json):模拟数据:{ "code": 1, "msg": "原创 2016-07-04 15:32:33 · 1573 阅读 · 0 评论 -
Swing超基础学习总结——1、简单的登录窗口样式
思前想后,还是学学Swing吧案例展示代码效果知识点剖析常用容器如窗口等JDialog JFrame本次案例没有用到Container本次案例没有用到常用控件JlabelJTextFieldJButton属性1常用属性setLocationRelativeTosetDefaultCloseOperationsetVisiblesetSizesetTitleset原创 2016-08-26 22:51:51 · 3971 阅读 · 0 评论 -
Swing超基础学习总结——2、简单布局:FlowLayout、GridLayout、BorderLayout、BoxLayout
其中重要讲三种布局,依靠的是JFrame容器FlowLayout案例构造参数说明BorderLayout案例构造参数说明BoxLayout案例构造参数说明FlowLayout最简单的布局管理器。它按照和页面上排列单词的类似方式来安排组件—-从左到右,直至没有多余的空间,然后转到下一行案例:public static void main(String[] args) {原创 2016-08-27 16:20:04 · 4153 阅读 · 0 评论 -
Swing超基础学习总结——3、复杂布局:GridBagLayout
据说是最复杂的布局也是最实用的一个布局GridBagLayout使用步骤案例GridBagLayout使用步骤①建立容器(例如JFrame)并设置布局方式:JFrame frame = new JFrame();frame.setSize(300, 300);frame.setTitle("GridBagLayout测试");frame.setLayout(new GridBagLayou原创 2016-08-28 08:02:31 · 4806 阅读 · 0 评论 -
Swing超基础学习总结——4、CardLayout与ActionListener
使用CardLayout制作切换卡案例代码CardLayout详细说明切换卡主要方法ActionListener详细说明使用方法案例代码统计点击次数使用CardLayout制作切换卡案例代码:public class CardLayoutAndListenerTest { /** * @param args */ static JButton preBu原创 2016-08-28 16:01:36 · 1303 阅读 · 0 评论 -
JAVA中的基础语句
JAVA的基础语句判断(if、if…else)、选择(switch)、循环(do…while、while、for)①判断:写法1: if(){…} if(){…} if(){…} ……. if(){…}写法2: if(/* 判断语句,结果为boolean */){ /* 符合条件时执行的代码 */ } else { /* 不符合条件时执行的代码 */ }写法3: if(/* 判原创 2015-11-24 20:24:46 · 803 阅读 · 0 评论