
java
脚脚脚脚
这个作者很懒,什么都没留下…
展开
-
springmvc控制器带参跳转
http://www.oschina.net/translate/spring-mvc-flash-attribute-examplehttp://blog.youkuaiyun.com/jackpk/article/details/19121777转载 2017-06-29 17:49:15 · 679 阅读 · 0 评论 -
比较器(三)Comparator接口
一、Comparator:public interface Comparator<T> { public int compara(T o1, T o2); public boolean equals(Object obj); }1、真正要实现的只有compare()方法,需要单独准备出一个类来实现Comparator接口,这个类将作为指定类的排序类; 2、Compar翻译 2016-08-09 17:26:14 · 570 阅读 · 0 评论 -
比较器(二)Comparable接口
一、定义public interface Comparable<T> { public int compareTo<T o>; }建议compareTo()方法返回三类数据:1(大于);0(等于);-1(小于);示例代码:public class Book implements Comparable<Book>{ private String name;翻译 2016-08-09 16:29:27 · 480 阅读 · 0 评论 -
java中一个服务端对客户端的带界面的聊天室
思路:用Swing包创建一个简单的聊天的面板,实现与服务端的通信,关键是将聊天面板发送的Msg传到服务端的Recieve线程中,将服务端Send线程中的Msg发送到聊天面板中显示,因此我选择了用构造方法传参的形式(其实也可以使用static方式)在线程中传入Msg服务端代码:/** * 实现多个客户端对应一个服务端进行通信 * * @author wangjue * */public原创 2016-09-11 14:34:14 · 6256 阅读 · 3 评论 -
比较器(一)Arrays类
一、二分查找法 public static int binarySearch(数组类型[] a,数组类型 key) 注:二分查找法必须是从小到大排序后的内容二、数组比较 public static boolean equals(数组类型[] a, 数组类型[] a2) 注:与Object类中的equals()没有关系三、复制指定的数组 public static 数据类型[]原创 2016-08-09 00:40:13 · 395 阅读 · 0 评论 -
买彩票-36随机选择7位数
思路:利用hashSet的去重特性和Radom类随机取数public class Demo2 { public static void main(String[] args) { HashSet<Integer> hs = new HashSet<Integer>(); Random r = new Random(); while (hs.siz原创 2016-08-30 00:43:55 · 3827 阅读 · 0 评论 -
ByteArrayOutputStream 和 ByteArrayInputStream的说明
一、结构 java.lang.Object —java.io.InputStream —java.io.ByteArrayInputStream 官方说明:ByteArrayInputStream 包含一个内部缓冲区,该缓冲区包含从流中读取的字节。java.lang.Object —java.io.OutputStream —java.io.ByteAr原创 2016-08-29 00:50:55 · 811 阅读 · 0 评论 -
最简单的桶排序
桶排序的思想: 利用一个数组长度为原数组最大值+1的,值都为0的新数组,记录原数组元素出现的次数保存在对应相等的新数组的下标,再依次输出新数组元素不为0的下标public class 桶排序 { public static void main(String[] args) { int[] t = {1,0,9,8,3,4,5,2,6,7,7,6,8}; //定原创 2016-08-28 00:39:22 · 534 阅读 · 0 评论 -
Java中String类两种实例化的区别
一、String类的第一种方式 1、直接赋值 例:String str = "hello"; 直接赋值实际上就是相当于一个匿名对象(“hello”)设置了一个名字(str),String类的匿名对象是由系统自动生成,不在由用户自己创建,产生了匿名对象就一定在堆内存在开辟了一块堆内存空间,并且由一块栈内存指向这块堆内存 2、采用直接赋值的String类对象的内存地址完全相同,stra,strb翻译 2016-08-01 17:06:54 · 4265 阅读 · 2 评论 -
Java线程的同步与死锁
一、线程同步 同步就是指多个操作在同一个时间段只能有一个线程进行,其他线程要等待此线程完成之后才可以继续进行在java中synchronized关键字可以通过两种方式实现同步: *同步代码块(在java中有四种代码块:普通代码块、构造块、静态块、同步块) *同步方法1、使用同步代码块要传入一个锁定的对象,一般即当前对象thispublic class MyThread implements R翻译 2016-07-27 22:42:59 · 320 阅读 · 0 评论 -
Lamda表达式
一、Lamda表达式:解决匿名内部类定义的冗余 传统的匿名内部interface IBook { public void write (String name);}public class Main { public static void main(String[] args) { fun(new IBook(){ public void原创 2016-07-17 16:41:45 · 349 阅读 · 0 评论 -
HashSet与TreeSet去重的区别
一、HashSet 在HashSet去重是根据Hash码是否相同,即对应两个对象的内存地址是否相同,如果一个对象要去重,要重写HashSet中的equals和hashCode方法 例子:public class Book { private String name; private double price; public Book(String name, double原创 2016-08-21 16:31:58 · 1439 阅读 · 0 评论 -
java服务端对多个客户端的群聊功能代码实现
以下代码可以实现服务端发送一条消息,多个客户端可以同时收到这条消息,同时客户端可以单独的和服务端通信 需要注意的是,此时服务端只需要一个发送消息的进程服务端代码:/** * 实现多个客户端对应一个服务端进行通信 * * @author wangjue * */public class MyServer { private ArrayList<Socket> list = ne原创 2016-09-13 00:26:13 · 5796 阅读 · 6 评论 -
java中集合输出的四种方式
一、Literator:迭代器 public boolean hasNext(); public E next() ; Iterator本身是一个接口,要想取得实例化只能依靠Collection接口中的一个操作方法:public Iterator<E> iterator();示例代码:public class MyLiterator { public static void main(S翻译 2016-08-12 17:11:19 · 15541 阅读 · 0 评论 -
JSP中错误页面设置
一、配置错误页面配置错误页面是指使用isErrorPage指定跳转到某一个错误页面1、在page指令中设置iserrorpage属性等于true<%@ page language="java" import="java.util.*" pageEncoding="utf-8" isErrorPage="true"%>(默认isErrorPage=“false”)设置完毕后,表示当原创 2017-01-17 16:27:12 · 5209 阅读 · 0 评论 -
java实现连接mysql工具类
package com.wangjue.util;import java.io.IOException;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLExcep原创 2017-01-11 16:22:27 · 4529 阅读 · 0 评论 -
java中properties配置文件的用法
一、新建properties文件在src文件下new一个file,命名为XXX.properties二、编写配置文件在properties的格式下,添加名值对的方式就不说了,说说在source格式下添加名值对的方式注意事项1、名用大写比较规范2、=两边别打空格3、名值对写完后别打分号三、在java中调用配置文件1、实例化properties类(java.原创 2017-01-10 17:05:17 · 62558 阅读 · 4 评论 -
eclipse for mac部署web项目至本地的tomcat但在webapps中找不到的解决方法
问题产生原因:eclipse不像myeclipse一样,将部署的web项目到tomcat下的webapps文件夹中,而是默认放在一个wtpwenapps文件夹下,而放在wtpwebapps文件夹下会导致localhost :8080报403错误,但是可以打开你创建的web工程,localhost:8080/web工程,要将web项目保存在webapps下,要修改deploy path原创 2016-12-20 01:53:30 · 6796 阅读 · 0 评论 -
eclipser for mac [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' t
在eclipse中启动tomcat 发出警告信息[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:test' did not find a matching property.导致项目无法打开,是因为Tomcat在serve原创 2016-12-20 01:27:07 · 1154 阅读 · 0 评论 -
LeetCode 1---Tow Sum
从今天开始刷LeetCode,今天刷的第一题是: 题目的关键是两数相加等于target ,只有一个solution ,所以返回的数组一定只有2个下标,以下为我的代码:public class Solution { public int[] twoSum(int[] nums, int target) { //创建一个数组保存符合题目要求的index值 int[] r原创 2016-12-23 00:12:45 · 441 阅读 · 0 评论 -
Java实现Html转PDF
【转载自熊哥club】【原地址:http://blog.youkuaiyun.com/xiongshengwu/article/details/53696651?ref=myread#comments】做java开发的都知道,java生成pdf大部分都是用itext,itext的确是java开源组件的第一选择。不过itext也有局限,就是要自己写模版,系统中的表单数量有好几百个,为每个表单做一个导出模转载 2016-12-22 21:14:07 · 2456 阅读 · 2 评论 -
JAVA利用commons codec与bouncy castle进行base64加密
BASE 严格地说,属于编码格式,而非加密算法,通常将MD5产生的字节数组交给BASE64再加密一把,得到相应的字符串。java中通常不会使用自带的包进行BASE64加密,而是使用commons codec和bouncy castle第三方jar包,应用场景: email、密钥,数字证书 以下为代码(先要导入commons codec和bouncy castle第三方jar包)import原创 2016-10-28 19:49:21 · 4363 阅读 · 0 评论 -
java中自己实现一个服务端对应多个客户端的简单代码
服务端代码:public class MyServer { public static void main(String[] args) { new MyServer().initServer(10099); } public void initServer(int port) { try { ServerSocket s原创 2016-09-05 22:32:02 · 2983 阅读 · 0 评论 -
java多线程复制文件
方法一、由n个线程完成一个文件的复制,即每个线程负责文件长度/n的一部分 若文件长度为len,由n个线程完成 线程1–读写从0到len/n 线程2–读写从2(len/n)-len/n ….. 最后一个线程–读写从len-(n-1)(len/n)以下为代码实现部分: 一、利用RadomAccessFile作为输出流public class MyThread implements Run原创 2016-08-26 01:48:52 · 710 阅读 · 0 评论 -
入门算法之冒泡排序
一、冒泡排序的原理: 相邻的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换例子:int[] t = {9,0,1,2,8,5,6};//内循环 从9开始第一次内循环: 第一次:9>0,9与0交换位置,数组t变成int[] t = {0,9,1,2,8,5,6};第二次:9>1,9 与1交换位置,数组t变成int[] t = {0,1,9,2,8,5,6};第三次:9>2,9与2交换位原创 2016-08-13 00:33:40 · 267 阅读 · 0 评论 -
ImageIO类说明
最近的项目中遇到ImageIO,因此记录下这个类的用法 一、ImageIO: 这个类中的方法都是静态方法,可以用来进行简单的图片IO操作 1、读入的三种方法 public static BufferedImage read(File input) File file = new File("/Users/xixi/Documents/aaa.png");BufferedImage bu原创 2016-09-15 16:47:59 · 37338 阅读 · 2 评论 -
java8新特性之接口定义增强
一、接口定义的增强:从JDK1.8开始允许在接口中定义普通方法,使用default和static关键字,跟在访问修饰符之后,两种的区别是,default定义的普通方法用对象调用,static定义的方法用接口名调用interface IBook { public void read(); //接口中定义普通方法---default、static default void wri原创 2016-07-17 14:47:18 · 1328 阅读 · 0 评论 -
java中基础的Annotation--@Override @Deprecated @SuppressWarnings
一、@Override:重写,使用Override后,明确告诉编译器这是重写的方法,若不是,编译器会报错二、Deprecated:声明过期操作,告诉开发者这个方法已经过期class Book { @Deprecated public void fun(){ System.out.println("过期了"); }}public class Main {翻译 2016-07-17 00:43:39 · 251 阅读 · 0 评论 -
事件处理(D9)
监听器的使用步骤: 1.先明确要处理的事件 2.再定义一个监听器类实现(implements)对应的监听器接口 3.创建监听器对象 4.给需要监听的组件上绑定监听器对象一、ActionListener可监听鼠标及键盘@Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated原创 2016-07-12 00:01:02 · 401 阅读 · 0 评论 -
接口与抽象类(java核心卷1-D6)
一、定义接口 public interface 接口名 {}二、接口的特点 1)接口中的属性必须是常量,默认全部用public static final修饰2)接口中的方法必须都是抽象方法,即public abstract(抽象类中的可以有抽象方法也可以没有抽象方法)3)接口没有构造方法,不能实例化。但是可以变成一个变量类型,接口变量必须引用实现了接口的类对象(???)4)类实现(implem原创 2016-06-29 00:21:47 · 358 阅读 · 0 评论 -
枚举类&Class类常用方法(Java核心卷1-D6)
一、枚举类格式 public enum Size {SMALL,MEDIUM,LARGE,EXTRA_LARGE}; 在比较 两个枚举类型的值时,直接使用“==”,不要调用“equals”二、枚举类常用方法 1)toString():返回枚举类常量名public class A { public enum Size { SMALL,MEDIUM,LARGE,EXTR原创 2016-06-28 20:43:20 · 1325 阅读 · 0 评论 -
浅谈附属类,内部类,匿名内部类,静态内部类
一、附属类 附属类只能用默认的访问修饰符,没有静态附属类 二、内部类 1、内部类一般定义成private,直接在类中其他方法中调用; 2、内部类地位可以想象成类中的方法,内部类可以随意使用外部类的成员变量;public class A { private String name = "张三"; private static int num = 001; public原创 2016-06-13 01:13:49 · 690 阅读 · 0 评论 -
初始static关键字
初识static关键字 一、static修饰属性:又叫静态变量,类属性,表示该类的对象共用同一个属性,static属性尽量使用类名直接调用,不需要对象 二、static修饰方法:又叫静态方法,表示该类的对象共用同一个方法,static方法尽量使用类名调用,同样不需要对象。 1、静态方法中不能调用非静态方法个非静态属性(非静态方法可以调用静态方法和静态属性)—>静态方法中不能使用th原创 2016-06-12 20:48:33 · 403 阅读 · 0 评论 -
装箱与拆箱(Java核心卷1 - D5)
八种基本类型都对应一个类类型 byte —— Byte short —— Short int —— Integer long —— Long float —— Float double —— Double char —— Character boolean —— Boolean一、装箱:将基本类型的值封装在类类型 Integer = new Integer(100);二、拆箱:从原创 2016-06-28 01:46:18 · 252 阅读 · 0 评论 -
Object类&泛型数组列表(Java核心卷1-D5)
一、Object类 1)所有数组类型,不管是对象数组还是基本类型的数组都扩展于Object类public class A { public static void main(String[] args) { int[] t = {1,2,3}; //两种定义方式 Object ob = t; Object ob2 = new原创 2016-06-28 01:21:01 · 353 阅读 · 0 评论 -
类的继承与抽象类(Java核心卷1-D4)
一、继承中几点需要注意的地方 1)格式:public class a extends b(); 问题: 2)对于子类特有的属性和方法,必须是子类类型的对象才能调用【子类自动转换成父类对象,则不能再调用子类中特有的属性和方法,必须再强制转换成子类对象】3)子类会继承到父类只能可见的属性和方法4)子类特有的方法必须是子类类型的对象才能调用(父类绝对不能用,一个对象如果在前面被地自动转型成父类类型原创 2016-06-27 00:54:40 · 688 阅读 · 0 评论 -
Calendar类简单常用的几种方法(java核心卷1-D3)
一、Calendar类 1、Calendar的实例化:由于Calendar是抽象类,不可以直接new出一个对象 Calendar calendar=Calendar.getInstance(); 2、Calendar类与Date类的互相转换 1) Calendar转化成Date Calendar cal=Calendar.getInstance(); Date date=cal.getTi原创 2016-06-26 23:56:37 · 497 阅读 · 0 评论 -
java运算符中值的注意的地方
只写写我这种初学者觉得比较重要的地方一、算术运算符1、+= ; *=:这两类喜欢用在累加,累乘的计算中2、a++与++a的区别:在同一行执行的代码中,a++是先处理其他,在自增(记忆方式,将a看做after,就是等处理完 别人的事情,在处理自己的事情) 在同一行执原创 2016-05-12 00:04:52 · 458 阅读 · 0 评论 -
this,super&final关键字说明
一、this: 1、只能用在一个类的方法和构造方法中,表示调用当前方法的对象public class AA { String name = "张三"; public void study(String name){ System.out.println(this.name + "在学习"); } public static void main(Str原创 2016-06-30 00:16:17 · 564 阅读 · 0 评论 -
Swing之创建框架的基本方法(java核心卷1-D7)
组件类很多方法都是以 set/get方法 形式出现的,但是对于类型为布尔的属性,获取的方法由 is 开头:public boolean isLocationByPlatform() public void setLocationByPlatform()——————————————————————-`public class A { public static void main(S原创 2016-06-30 01:46:56 · 670 阅读 · 0 评论