Java
文章平均质量分 52
sinolzeng
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Timer的schedule和scheduleAtFixedRate方法的区别解析
在java中,Timer类主要用于定时性、周期性任务的触发,这个类中有两个方法比较难理解,那就是schedule和scheduleAtFixedRate方法,在这里就用实例分析一下(1)schedule方法:“fixed-delay”;如果第一次执行时间被delay了,随后的执行时间按照上一次实际执行完成的时间点进行计算(2)scheduleAtFixedRate方法:“fixed-r转载 2014-12-20 10:56:02 · 539 阅读 · 0 评论 -
@SuppressWarnings注解
简介:java.lang.SuppressWarnings是J2SE5.0中标准的Annotation之一。可以标注在类、字段、方法、参数、构造方法,以及局部变量上。作用:告诉编译器忽略指定的警告,不用在编译完成后出现警告信息。使用:@SuppressWarnings(“”)@SuppressWarnings({})@SuppressWarnings(value={})转载 2014-12-16 08:22:17 · 444 阅读 · 0 评论 -
JAVA不借助第三个变量实现两个变量交换的思考
网上存在三种方法: 1) 算术运算简单来说,就是通过+和-运算来实现。代码如下:int a,b;a=10;b=12;a=b-a; //a=2;b=12b=b-a; //a=2;b=10a=b+a; //a=12;b=10通过以上运算,a和b中的值就进行了交换。表面上看起来很简单,但是不容易想到,尤其是在习惯标准算法之后。此算法与标准算转载 2014-12-15 17:38:03 · 2452 阅读 · 0 评论 -
java vector arraylist linkedlist用法与区别
首先,它们是list的实现类,大致说一下vector arraylist linkedlist的区别。1、线程安全来讲,vector是线程安全,arraylist linkedlist线程不安全。2、底层实现来讲,vector arraylist是数组,linkedlist是双向链表。3、效率上讲,vector比arraylist慢。由于vector和arrayli转载 2014-11-25 10:10:10 · 1412 阅读 · 0 评论 -
Java Vector与ArrayList的区别
俗话说最危险的地方最安全,写Java代码的时候Vector估计是最常用的集合类了,ArrayList用得也不少。不过关于这两个类有什么区别竟然从来就没去关注过,直到今天才偶然发现这两个类其实有重大区别,即Vector的所有方法都加了synchronized,而ArrayList没有加。这一点区别可不小,虽然Java对synchronized是优化再优化,再比起不加synchronized的转载 2014-11-25 10:09:21 · 540 阅读 · 0 评论 -
java getSource()和 getActionCommand()
比如说 按纽的事件,同一个JFrame里可能有多个按钮的事件,为了避免冲突,给每个按钮设置不同的ActionCommand,在监听时间的时候,用这个做条件区分事件,以做不同的响应追问他与getSource有什么区别回答getSource()Returns:The object on which the Event initially occurred转载 2014-11-25 09:52:57 · 14667 阅读 · 0 评论 -
java构造函数经典详解
构造方法是对象被创建时初始化对象的成员方法,它具有和它所在的类完全一样的名字。构造方法只能有入口参数,没有返回类型,因为一个类的构造方法的返回类就是类本身。构造方法定义后,创建对象时就会自动调用它,对新创建的对象分配内存空间和初始化。在Java 中,构造方法也可以重载,当创建一个对象时, JVM会自动根据当前对方法的调用形式在类的定义中匹配形式符合的构造方法,匹配成功后执行该构造方法。如果省略转载 2014-11-25 09:46:08 · 1078 阅读 · 0 评论 -
java Graphics2D类
Java 2D拥有强大的二维图形处理能力,这些功能主要是由Graphics2D类来完成的,该类是Graphics类的一个子类。它的特点是把所绘的图形当成一个对象来处理,绘制前先创建对象。绘制2D直线调用格式:先创建2D线形对象:Line2D line=new Line2D.Double(double x1,double y1,double x2,double y2);然转载 2014-11-24 17:01:26 · 9188 阅读 · 0 评论 -
java.awt.Graphics2D绘制流程图基本元素
java.lang.Object ----java.awt.Graphics ----java.awt.Graphics2D由于项目需要,要求对用户流程进行图形化展示:用户对自己的操作通过查看流程图一目了然。于是进行了一下前期的java绘图探索,通过java.awt.Graphics2D对绘制流程图的基本元素进行了编码,并将其展示在了jsp页面上。首先编写一个servlet,然转载 2014-11-24 17:00:22 · 1188 阅读 · 0 评论 -
java,将Image变量保存成图片
public void savePic(Image iamge ){ int w = iamge.getWidth(this); int h = iamge.getHeight(this);//首先创建一个BufferedImage变量,因为ImageIO写图片用到了BufferedImage变量。 BufferedImage bi转载 2014-11-24 16:58:22 · 17171 阅读 · 1 评论 -
java中JList的setSelectionMode()详解
有三种选择方式 MULTIPLE_INTERVAL_SELECTION可以选择不相邻的几项SINGLE_INTERVAL_SELECTION只能选择连续的几项SINGLE_SELECTION一次只能选择一项原创 2014-11-22 14:41:41 · 10049 阅读 · 0 评论 -
java.lang.Thread 和 java.lang.Runnable的区别
thread是类runnable是接口实现多线程有两种方式:1.继承Thread,然后重写他的run方法2.实现Runnable接口,并实现他的run方法启动线程时也有区别继承Thread的类直接调用start方法即可实现Runnable接口要这样启动runab :是实现Runnable接口类的对象Thread thr = new Thread(runab); thr.st转载 2014-11-24 10:22:18 · 560 阅读 · 0 评论 -
java 中的printStackTrace()方法
java抛出异常的方法有很多,其中最常用的两个:System.out.println(e),这个方法打印出异常,并且输出在哪里出现的异常,不过它和另外一个e.printStackTrace()方法不同。后者也是打印出异常,但是它还将显示出更深的调用信息。比如说:A extends---> B extends ----> C当在创建A的过程中出现问题了,我们抛出异常。S转载 2014-11-24 08:21:48 · 4258 阅读 · 0 评论 -
Java中Runnable和Thread的区别
在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限。下面看例子:package org.thread.demo; class MyThread extends Th转载 2014-11-27 20:34:56 · 514 阅读 · 0 评论 -
swing美化的几个风格
http://www.javasoft.de/synthetica/themes/http://www.jtattoo.net/index.htmlhttp://docs.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.htmlhttp://www.cnblogs.com/jb2011/archive/2012/09/12/2转载 2014-11-28 09:03:11 · 8029 阅读 · 0 评论 -
java中的dispose()方法
java中的dispose()方法先来看看 JAVA 1.5 的帮助文档的原文 - dispose - public void dispose()****** 释放由此 Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源。即这些 Component 的资源将被破坏,它们使用的所有内存都将返回到操作系统,并将它们标记为不可显示。 通过随后对 pack 或 show 的转载 2014-11-22 11:06:47 · 20982 阅读 · 0 评论 -
Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^)
位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。 1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段。public class dat转载 2014-12-15 15:58:31 · 490 阅读 · 0 评论 -
java用重载实现获取元素的数据类型
如题:用下面的方法来搞定问题。public class gT { public static String getType(Object o) { return o.getClass().toString(); } public static String getType(int o) { return "int";原创 2014-12-18 09:22:09 · 679 阅读 · 0 评论 -
java程序应用编写如何判断文本框里面的数据类型
这个问题并不难,下面这一段代码,只要仿照它并稍作修改就可以了:public void actionPerformed(ActionEvent e) { //接受事件,并作出相应的响应 if(e.getSource()==tx){ //文本框事件 try{ //可能产生异常 int num; num=Integer.parseInt(tx.getText()转载 2014-12-18 09:23:12 · 3151 阅读 · 0 评论 -
java paintComponent的一些解读
首先,paintComponent()是swing的一个方法,相当于图形版的main(),是会自执行的。如果一个class中有构造函数,则执行顺序是先执行构造函数,再执行这个。下面直接转载一个网友关于paintComponent()的介绍:(我们明天就开始java游戏设计之旅啦!)下面看看Swing中paint与paintComponent的区别。查API文原创 2014-12-19 10:40:55 · 25141 阅读 · 1 评论 -
Java中static的作用
Java中static的作用请先看下面这段程序: public class Hello{ public static void main(String[] args){ //(1) System.out.println("Hello,world!"); //(2) } } 看过这段程序,对于大多数学过Java 的从来说,都不生转载 2014-12-19 09:06:17 · 768 阅读 · 0 评论 -
关于Icon,Image,ImageIcon的简单的对比参考
其实就算是现在,我还是有不少地方概念模糊,但是下面的内容是是没有什么问题的。稍微介绍一下,或许有些地方我无法解释:大部分内容都是查的Java SE 5.0 APIIcon:Icon位于javax.swing包中,它是一个接口 public interface Icon,介绍为:一个小的固定大小的图片,通常用于装饰组件有三个方法:int getIconHeight();int转载 2014-12-19 08:58:57 · 1295 阅读 · 0 评论 -
java中synchronized的用法详解
记下来,很重要。Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问ob转载 2014-12-18 21:49:56 · 478 阅读 · 0 评论 -
Java AffineTransform入门
这里我们要用java 2-D来进行坐标空间中的变换。看到这里貌似要去复习线性代数了(呜呜)。这里主要讲的是仿射变换的入门,我们这一次主要是要尝试用实例证明:仿射变换的顺序是不可逆的。我们将要看到的程序实现了两种情况,一种是先平移,再旋转;另一种是先旋转,在平移。为了能更好的理解程序,首先得了解一些基本内容。AffineTransform,即仿射变换。那么什么是仿射变换呢?几何中,一个向转载 2014-12-18 17:54:13 · 1663 阅读 · 1 评论 -
RenderingHints 参数
RenderingHints 类定义了多种着色微调,它们存储在一个映射集的 Graphics2D 对象里。setRenderingHint() 方法的参数是一个键以及对应的键值。在我们的代码中,第一个参数是代表 alpha 合成微调的键,第二个参数是该微调的值。该微调的其它可能的值有VALUE_ALPHA_INTERPOLATION_DEFAULT,代表平台缺省值;以及 VALUE_ALPHA转载 2014-12-18 17:46:48 · 9313 阅读 · 1 评论 -
JAVA中indexOf函数用法
int indexOf(int ch,int fromIndex)函数:就是字符ch在字串fromindex位后出现的第一个位置.没有找到返加-1eg:String str="a2dfcfar1bzvb"; System.out.println(str.indexOf(97,2)); 看这个例子,输出:6 a的ASCII为97,就从d开始找a找到了输出a所在字符串的确切位置,找不到转载 2014-12-18 09:26:30 · 17192 阅读 · 0 评论 -
一起来看看java正则表达式
首先是字符解释:字符 描述\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位转载 2014-12-18 14:19:52 · 659 阅读 · 0 评论 -
java哈希表
哈希表是一种重要的存储方式,也是一种常见的检索方法。其基本思想是将关系码的值作为自变量,通过一定的函数关系计算出对应的函数值,把这个数值解释为结点的存储地址,将结点存入计算得到存储地址所对应的存储单元。检索时采用检索关键码的方法。现在哈希表有一套完整的算法来进行插入、删除和解决冲突。在Java中哈希表用于存储对象,实现快速检索。 Java.util.Hashtable提供了种方法让用户使用哈转载 2014-12-17 11:23:14 · 746 阅读 · 0 评论 -
java Hashtable的遍历方法
今天遇到用hashtable取值时发现取得的值是排过序的,而我并希望它排序输出,因为它是倒序输出,查一下原因是因为我用下面的第一种方法取值的,将hashtable的值排序输出了,这个真是我疏忽的问题,原来hashtable还具有自动排序的功能.于是我从网上查了些资料,并整理记录下来:import java.util.Enumeration;import java.util.Hashtabl转载 2014-12-17 11:21:45 · 2679 阅读 · 0 评论 -
GridBagLayout布局管理器应用详解
很多情况下,我们已经不需要通过编写代码来实现一个应用程序的图形界面,而是通过强大的IDE工具通过拖拽辅以简单的事件处理代码即可很轻松的完成。但是我们不得不面对这样操作存在的一些问题,有时候我们希望能够自由改变一个程序界面的大小,通过托拽生成的界面往往是不提供这个功能的,因为定制的界面一旦改变形状,组件间的布局会变得杂乱无章。 Java中的布局管理器应用了策略者模式(Strategy),转载 2014-12-17 08:29:21 · 1018 阅读 · 0 评论 -
HashMap和Hashtable的区别
导读: 1 HashMap不是线程安全的 hastmap是一个接口 是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而hashtable不允许。2 HashTable是线程安全的一个Collection。HashMap是Hash转载 2014-12-17 11:24:06 · 561 阅读 · 0 评论 -
使用eventqueue.invokelater()好处、原因
EventQueue.invokeLater(new Runnable() { public void run() { try { Array1 frame = new Array1(); frame.setVisible(true);转载 2014-12-17 11:40:53 · 14220 阅读 · 0 评论 -
Java学习之Iterator(迭代器)的一般用法
迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。 Java中的Iterator功能比较简单,并且只能单向移动: (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一转载 2014-12-17 11:20:19 · 585 阅读 · 0 评论 -
java程序中,数据验证,如何判断输入的文本框中的值是不是int型?
String str1=jTextField1.getText();str1=str1.replaceAll("[0-9]","");//将所有的数字型字符替换为空if(str1.length()==0) System.out.println(“文本框中的值是int类型”);//文本框中的值是int类型else System.out.println(“文本框中的值不是转载 2014-12-18 09:24:06 · 8207 阅读 · 1 评论 -
JAVA获取当前系统时间System.currentTimeMillis()
System.currentTimeMillis()产生一个当前的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数,Date()其实就是相当于Date(System.currentTimeMillis());因为Date类还有构造Date(longdate),用来计算long秒与1970年1月1日之间的毫秒差。得到了这个毫秒数,我们自己也可以算起现在的年月日周时,但是这不是我们去计算的转载 2014-11-26 17:33:26 · 3631 阅读 · 0 评论 -
addActionListener(this)
在看看一段**.addActionListener(this);为什么必须加this,查了查,原来这里必须有事件监听对象,并且this指本身这个对象,这个类会实现监听器这个接口。转载 2014-11-21 11:10:49 · 21233 阅读 · 5 评论 -
Java获取当前路径
1、利用System.getProperty()函数获取当前路径:System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径2、使用File提供的函数获取当前路径:File directory = new File("");//设定为当前文件夹try{ System.out.print转载 2014-11-25 18:03:19 · 610 阅读 · 0 评论 -
eclipse的安装使用
很多人都知道要用eclipse来做java开发,但很多的新手朋友却不知道怎么下载和安装eclipse。下面给你介绍一下怎么下载和安装eclipse来用于自己的学习或者项目开发。方法/步骤1进入官方网站eclipse.org,点击donwload进入下载页面。下图中两个图上的download都可以进到下载页:转载 2014-09-29 20:02:20 · 764 阅读 · 0 评论 -
解决安装jdk后使用cmd校验出现has value '1.8',but'1.7' is required.的方法
首先说一下怎么安装jdk,这个很简单,首先上官网。原创 2014-09-29 22:11:42 · 55982 阅读 · 1 评论 -
GridBagConstraints参数详解
gridx = 2; // X2gridy = 0; // Y0gridwidth = 1; // 横占一个单元格gridheight = 1; // 列占一个单元格weightx = 0.0; // 当窗口放大时,长度不变weighty = 0.0; // 当窗口放大时,高度不变anchor = GridBagConstraints.NORTH; // 当组件没有空间大时转载 2014-11-16 23:48:44 · 1238 阅读 · 0 评论
分享