- package test1;
- /**
- * Title: Hello Java World
- * Description: 简单的Java程序,只显示一个信息。
- * filename: HelloWorld.java
- */
- public class HelloWorld {
- public static void main(String[] args) {
- System.out.println("Hello Java World!");
- }
- }
- package test2;
- /**
- * Title: Java语言流程演示
- * Description: 演示Java中几种常用的流程控制操作
- * Filename: flowDome.java
- */
- public class flowDemo{
- public static void main(String[] arges){
- int iPara1,iPara2,iEnd;
- if(arges.length!=3)
- {
- System.out.println("USE :java flowDome parameter1 parameter2 circle");
- System.out.println("parameter1 : 比较条件1,数字类型");
- System.out.println("parameter2 : 比较条件2,数字类型");
- System.out.println("circle :循环次数");
- System.out.println("ego:java flowDome 1 2 5");
- return;
- }else{
- iPara1 = Integer.parseInt(arges[0]);
- iPara2 = Integer.parseInt(arges[1]);
- iEnd = Integer.parseInt(arges[2]);
- }
- //if语句
- if(iPara2>iPara1)
- {
- System.out.println("if 条件满足!");
- System.out.println("第2个数比第1个数大!");
- }
- else
- {
- System.out.println("if 条件不满足!");
- System.out.println("第2个数比第1个数小!");
- }
- //for循环操作
- for(int i=0;i<iEnd;i++)
- {
- System.out.println("这是for 第"+i+"次循环");
- }
- //while循环操作
- int i=0;
- while(i<iEnd)
- {
- System.out.println("这是while 第"+i+"次循环");
- i++;
- }
- //do-while循环操作
- int j=0;
- do
- {
- System.out.println("这是do-while 第"+j+"次循环");
- j++;
- }while(j<iEnd);
- }
- }
- package test3;
- /**
- * Title: 数组数据操作
- * Description: 演示一维数组和多维数组的初始化和基本操作
- * Filename: myArray.java
- */
- public class myArray{
- //初始化数组变量
- char[] cNum = {'1','2','3','4','5','6','7','8','9','0'};
- char[] cStr = {'a','b','c','d','e','f','g','h',
- 'i','j','k','l','m','n','o','p',
- 'q','r','s','t','u','v','w','x','y','z'};
- int[] iMonth = {31,28,31,30,31,30,31,31,30,31,30,31};
- String[] sMail = {"@","."};
- /**
- *<br>方法说明:校验电子邮件
- *<br>输入参数:String sPara 被校验的电子邮件字符
- *<br>返回类型:boolean 如果校验的格式符合电子邮件格式返回true;否则返回false
- */
- public boolean isMail(String sPara){
- for(int i=0;i<sMail.length;i++){
- if(sPara.indexOf(sMail[i])==-1)
- return false;
- }
- return true;
- }
- /**
- *<br>方法说明:判断是否是数字
- *<br>输入参数:String sPara。 需要判断的字符串
- *<br>返回类型:boolean。如果都是数字类型,返回true;否则返回false
- */
- public boolean isNumber(String sPara){
- int iPLength = sPara.length();
- for(int i=0;i<iPLength;i++){
- char cTemp = sPara.charAt(i);
- boolean bTemp = false;
- for(int j=0;j<cNum.length;j++){
- if(cTemp==cNum[j]){
- bTemp = true;
- break;
- }
- }
- if(!bTemp) return false;
- }
- return true;
- }
- /**
- *<br>方法说明:判断是否都是英文字符
- *<br>输入参数:String sPara。要检查的字符
- *<br>返回类型:boolean。如果都是字符返回true;反之为false
- */
- public boolean isString(String sPara){
- int iPLength = sPara.length();
- for(int i=0;i<iPLength;i++){
- char cTemp = sPara.charAt(i);
- boolean bTemp = false;
- for(int j=0;j<cStr.length;j++){
- if(cTemp==cStr[j]){
- bTemp = true;
- break;
- }
- }
- if(!bTemp) return false;
- }
- return true;
- }
- /**
- *<br>方法说明:判断是否是闰年
- *<br>输入参数:int iPara。要判断的年份
- *<br>返回类型:boolean。如果是闰年返回true,否则返回false
- */
- public boolean chickDay(int iPara){
- return iPara%100==0&&iPara%4==0;
- }
- /**
- *<br>方法说明:检查日期格式是否正确
- *<br>输入参数:String sPara。要检查的日期字符
- *<br>返回类型:int。0 日期格式正确,-1 月或这日不合要求, -2 年月日格式不正确
- */
- public int chickData(String sPara){
- @SuppressWarnings("unused")
- boolean bTemp = false;
- //所输入日期长度不正确
- if(sPara.length()!=10) return -2;
- //获取年
- String sYear = sPara.substring(0,4);
- //判断年是否为数字
- if(!isNumber(sYear)) return -2;
- //获取月份
- String sMonth = sPara.substring(5,7);
- //判断月份是否为数字
- if(!isNumber(sMonth)) return -2;
- //获取日
- String sDay = sPara.substring(8,10);
- //判断日是否为数字
- if(!isNumber(sDay)) return -2;
- //将年、月、日转换为数字
- int iYear = Integer.parseInt(sYear);
- int iMon = Integer.parseInt(sMonth);
- int iDay = Integer.parseInt(sDay);
- if(iMon>12) return -1;
- //闰年二月处理
- if(iMon==2&&chickDay(iYear)){
- if(iDay>29) return 2;
- }else{
- if(iDay>iMonth[iMon-1]) return -1;
- }
- return 0;
- }
- /**
- *<br>方法说明:主方法,测试用
- *<br>输入参数:
- *<br>返回类型:
- */
- public static void main(String[] arges){
- myArray mA = new myArray();
- //校验邮件地址
- boolean bMail = mA.isMail("tom@163.com");
- System.out.println("1 bMail is "+bMail);
- bMail = mA.isMail("tom@163com");
- System.out.println("2 bMail is "+bMail);
- //演示是否是数字
- boolean bIsNum = mA.isNumber("1234");
- System.out.println("1:bIsNum="+bIsNum);
- bIsNum = mA.isNumber("123r4");
- System.out.println("2:bIsNum="+bIsNum);
- //演示是否是英文字符
- boolean bIsStr = mA.isString("wer");
- System.out.println("1:bIsStr="+bIsStr);
- bIsStr = mA.isString("wer3");
- System.out.println("2:bIsStr="+bIsStr);
- //演示检查日期
- int iIsTime = mA.chickData("2003-12-98");
- System.out.println("1:iIsTime="+iIsTime);
- iIsTime = mA.chickData("2003-111-08");
- System.out.println("2:iIsTime="+iIsTime);
- iIsTime = mA.chickData("2003-10-08");
- System.out.println("3:iIsTime="+iIsTime);
- iIsTime = mA.chickData("2000-02-30");
- System.out.println("4:iIsTime="+iIsTime);
- }
- }
- package test4;
- import java.util.*;
- /**
- * Title: 矢量操作<
- * Description: 演示一个矢量(Vector)的基本操作
- * Filename: operateVector.java
- */
- public class operateVector
- {
- /*
- *<br>方法说明:生成一个4*4的二维Vector,供使用。
- *<br>输入参数:
- *<br>输出变量:Vector
- *<br>其它说明:
- */
- public Vector<Object> buildVector(){
- Vector<Object> vTemps = new Vector<Object>();
- for(int i=0;i<4;i++){
- Vector<Object> vTemp = new Vector<Object>();
- for (int j=0;j<4;j++){
- vTemp.addElement("Vector("+i+")("+j+")");
- }
- vTemps.addElement(vTemp);
- }
- return vTemps;
- }
- /*
- *<br>方法说明:插入数据
- *<br>输入参数:Vector vTemp 待插入的数据对象
- *<br>输入参数:int iTemp 插入数据的位置
- *<br>输入参数:Object oTemp 插入数据值
- *<br>输出变量:Vector 结果
- *<br>其它说明:如果插入位置超出实例实际的位置将返回null
- */
- public Vector<Object> insert(Vector<Object> vTemp,int iTemp,Object oTemp){
- if(iTemp>vTemp.size()){
- print("数据超界!");
- return null;
- }else{
- vTemp.insertElementAt(oTemp,iTemp);
- }
- return vTemp;
- }
- /*
- *<br>方法说明:移除数据
- *<br>输入参数:Vector vTemp 待删除矢量对象
- *<br>输入参数:int iTemp 删除数据的位置
- *<br>输出变量:Vector
- *<br>其它说明:如果删除超界的数据,将返回null
- */
- public Vector<Object> delete(Vector<Object> vTemp,int iTemp){
- if(iTemp>vTemp.size()){
- print("数据超界!");
- return null;
- }else{
- vTemp.removeElementAt(iTemp);
- }
- return vTemp;
- }
- /*
- *<br>方法说明:修改数据
- *<br>输入参数:Vector vTemp 待修改矢量对象
- *<br>输入参数:int iTemp 修改数据的位置
- *<br>输入参数:Object oTemp 修改数据值
- *<br>输出变量:Vector
- *<br>其它说明:如果修改位置超界的数据,将返回null
- */
- public Vector<Object> updata(Vector<Object> vTemp,int iTemp,Object oTemp){
- if(iTemp>vTemp.size()){
- print("数据超界!");
- return null;
- }else{
- vTemp.setElementAt(oTemp,iTemp);
- }
- return vTemp;
- }
- /*
- *<br>方法说明:输出信息
- *<br>输入参数:String sTemp 输出信息名称
- *<br>输入参数:Object oTemp 输出信息值
- *<br>返回变量:无
- */
- public void print(String sTemp,Vector<Object> oTemp){
- System.out.println(sTemp+"数据:");
- this.print(oTemp);
- }
- /**
- *<br>方法说明:打印输出(过载)
- *<br>输入参数:Object oPara 输出的对象
- *<br>返回类型:无
- */
- public void print(Object oPara){
- System.out.println(oPara);
- }
- /**
- *<br>方法说明:打印输出(过载)
- *<br>输入参数:Vector vPara 显示输出矢量对象
- *<br>返回类型:无
- */
- public void print(Vector<Object> vPara){
- for(int i=0;i<vPara.size();i++){
- System.out.println(vPara.elementAt(i));
- }
- }
- /**
- *<br>方法说明:主方法,程序入口
- *<br>输入参数:String[] args
- *<br>返回类型:无
- */
- public static void main(String[] args)
- {
- operateVector ov = new operateVector();
- Vector<Object> vTemp = ov.buildVector();
- ov.print("vTemp0",vTemp);
- Vector<Object> vResult = ov.insert(vTemp,2,"添加的数据");
- ov.print("vResult",vResult);
- Vector<Object> vResultup = ov.updata(vResult,2,"修改的数据");
- ov.print("vResultmp",vResultup);
- Vector<Object> vResultnow = ov.delete(vResultup,2);
- ov.print("vResultnow",vResultnow);
- }
- }
- package test5;
- import java.util.*;
- /**
- * Title: 哈希表操作
- * Description: 这是一个权限认证的例子,使用了哈希表作为数据的存储
- * Filename: RoleRight.java
- */
- public class RoleRight
- {
- private static Hashtable<String, String> rightList = new Hashtable<String, String>();
- /**
- *<br>方法说明:初始化数据
- *<br>输入参数:
- *<br>返回类型:
- */
- public void init()
- {
- String[] accRoleList = {"admin","satrap","manager","user","guest"};
- String[] rightCodeList = {"10001","10011","10021","20011","24011"};
- for(int i=0;i<accRoleList.length;i++)
- {
- rightList.put(accRoleList[i],rightCodeList[i]);
- }
- }
- /**
- *<br>方法说明:获取角色权限代码
- *<br>输入参数:String accRole 角色名称
- *<br>返回类型:String 权限代码
- */
- public String getRight(String accRole)
- {
- if(rightList.containsKey(accRole))
- return (String)rightList.get(accRole);
- else
- return null;
- }
- /**
- *<br>方法说明:添加角色和代码信息
- *<br>输入参数:String accRole 角色名称
- *<br>输入参数:String rightCode 角色权限代码
- *<br>返回类型:void (无)
- */
- public void insert(String accRole,String rightCode)
- {
- rightList.put(accRole,rightCode);
- }
- /**
- *<br>方法说明:删除角色权限
- *<br>输入参数:String accRole 角色名称
- *<br>返回类型:void(无)
- */
- public void delete(String accRole)
- {
- if(rightList.containsKey(accRole))
- rightList.remove(accRole);
- }
- /**
- *<br>方法说明:修改角色权限代码
- *<br>输入参数:String accRole 角色名称
- *<br>输入参数:String rightCode 角色权限代码
- *<br>返回类型:void(无)
- */
- public void update(String accRole,String rightCode)
- {
- //this.delete(accRole);
- this.insert(accRole,rightCode);
- }
- /**
- *<br>方法说明:打印哈希表中角色和代码对应表
- *<br>输入参数:无
- *<br>返回类型:无
- */
- public void print()
- {
- Enumeration<String> RLKey = rightList.keys();
- while(RLKey.hasMoreElements())
- {
- String accRole = RLKey.nextElement().toString();
- print(accRole+"="+this.getRight(accRole));
- }
- }
- /**
- *<br>方法说明:打印信息(过载)
- *<br>输入参数:Object oPara 打印的信息内容
- *<br>返回类型:无
- */
- public void print(Object oPara)
- {
- System.out.println(oPara);
- }
- /**
- *<br>方法说明:主方法,
- *<br>输入参数:
- *<br>返回类型:
- */
- public static void main(String[] args)
- {
- RoleRight RR = new RoleRight();
- RR.init();
- RR.print();
- RR.print("___________________________");
- RR.insert("presider","10110");
- RR.print();
- RR.print("___________________________");
- RR.update("presider","10100");
- RR.print();
- RR.print("___________________________");
- RR.delete("presider");
- RR.print();
- }
- }//end:)~
- package test6;
- /**
- * Title: 树参数
- * Description: 使用继承类,柳树就是树
- * Filename: osier.java
- */
- class tree
- {
- /**
- *<br>方法说明:树的树根
- */
- public void root()
- {
- String sSite = "土壤中";
- String sFunction = "吸收养份";
- print("位置:"+sSite);
- print("功能:"+sFunction);
- }
- /**
- *方法说明:树的树干
- */
- public void bolo()
- {
- String sSite = "地面";
- String sFunction = "传递养份";
- print("位置:"+sSite);
- print("功能:"+sFunction);
- }
- /**
- *方法说明:树的树枝
- */
- public void branch()
- {
- String sSite = "树干上";
- String sFunction = "传递养份";
- print("位置:"+sSite);
- print("功能:"+sFunction);
- }
- /**
- *方法说明:树的叶子
- */
- public void leaf()
- {
- String sSite = "树梢";
- String sFunction = "光合作用";
- String sColor = "绿色";
- print("位置:"+sSite);
- print("功能:"+sFunction);
- print("颜色:"+sColor);
- }
- /**
- *方法说明:显示信息
- *输入参数:Object oPara 显示的信息
- */
- public void print(Object oPara)
- {
- System.out.println(oPara);
- }
- /**
- *方法说明:主方法:
- */
- public static void main(String[] arges)
- {
- tree t = new tree();
- t.print("描述一棵树:");
- t.print("树根:");
- t.root();
- t.print("树干:");
- t.bolo();
- t.print("树枝:");
- t.branch();
- t.print("树叶:");
- t.leaf();
- }
- }
- /**
- * Title: 柳树参数
- * Description: 描述柳树的参数
- */
- class osier extends tree
- {
- /**
- *方法说明:过载树的树叶
- */
- public void leaf()
- {
- super.leaf();
- String sShape = "长形";
- super.print("形状:"+sShape);
- }
- /**
- *方法说明:扩展树的花
- */
- public void flower()
- {
- print("哈哈,柳树没有花!!");
- }
- /**
- *方法说明:主方法
- */
- public static void main(String[] args)
- {
- osier o = new osier();
- o.print("柳树树根:");
- o.root();
- o.print("柳树树干:");
- o.bolo();
- o.print("柳树树枝:");
- o.branch();
- o.print("柳树树叶:");
- o.leaf();
- o.print("柳树花:");
- o.flower();
- }
- }
- package test7;
- /**
- * Title: 接口和抽象函数
- * Description: 演示继承抽象函数和实现接口
- * Filename: newPlay.java
- */
- //接口
- interface player
- {
- int flag = 1;
- void play();//播放
- void pause();//暂停
- void stop();//停止
- }//end :)
- //抽象类
- abstract class playing
- {
- public void display(Object oPara)
- {
- System.out.println(oPara);
- }
- abstract void winRun();
- }//end :)
- //继承了playing抽象类和实现类player接口
- public class newPlay extends playing implements player
- {
- public void play()
- {
- display("newPlay.play()");//这里只是演示,去掉了代码。
- }
- public void pause()
- {
- display("newPlay.pause()");//这里只是演示,去掉了代码。
- }
- public void stop()
- {
- display("newPlay.stop()");//这里只是演示,去掉了代码。
- }
- void winRun()
- {
- display("newPlay.winRun()");//这里只是演示,去掉了代码。
- }
- public static void main(String[] args)
- {
- newPlay p = new newPlay();
- p.play();
- p.pause();
- p.stop();
- p.winRun();
- }
- }//end :)
- package test8.com;
- /**
- * Title: 标识符
- * Description: 演示标识符对类的访问控制
- * Filename:
- */
- public class classDemo1 {
- // 公有方法
- public void mechod1() {
- System.out.println("这是一个公有的方法!任何类都可以访问。");
- }
- // 授保护的方法
- protected void mechod2() {
- System.out.println("这是一个受到保护的方法!只有子类可以访问。");
- }
- // 私有的方法
- private void mechod3() {
- System.out.println("这是一个私有的方法!只有类本身才可以访问。");
- }
- public static void main(String[] args) {
- classDemo1 d = new classDemo1();
- d.mechod1();
- d.mechod2();
- d.mechod3();
- }
- }
- package test8.com;
- /**
- * Title: 标识符
- * Description: 演示标识符对类的访问控制
- * Filename:
- */
- public class classPlay
- {
- public static void main(String[] args){
- classDemo1 d = new classDemo1();
- d.mechod1();
- d.mechod2();
- //d.mechod3();
- }
- }
- package test8.net;
- import test8.com.classDemo1;
- /**
- * Title: 标识符
- * Description: 演示标识符对类的访问控制
- * Filename:
- */
- public class classPlay
- {
- public static void main(String[] args){
- classDemo1 d = new classDemo1();
- d.mechod1();
- //d.mechod2();
- //d.mechod3();
- }
- }
- package test9;
- /**
- * Title: 捕获异常和实现自己的异常
- * Description: 通过继承Exception类来实现自己的异常类。并使用try-catch来捕获这个异常。
- * Filename:
- */
- class MyException extends Exception {
- private static final long serialVersionUID = 1L;
- public MyException() {
- }
- public MyException(String msg) {
- super(msg);
- }
- public MyException(String msg, int x) {
- super(msg);
- i = x;
- }
- public int val() {
- return i;
- }
- private int i;
- }
- public class DemoException {
- /**
- *方法说明:使用MyException类中默认的构造器
- */
- public static void a() throws MyException {
- System.out.println("Throwing MyException from a()");
- throw new MyException();
- }
- /**
- *方法说明:使用MyException类中带信息的构造器
- */
- public static void b() throws MyException {
- System.out.println("Throwing MyException from b()");
- throw new MyException("Originated in b()");
- }
- /**
- *方法说明:使用了MyException中有编码的构造器
- */
- public static void c() throws MyException {
- System.out.println("Throwing MyException from c()");
- throw new MyException("Originated in c()", 47);
- }
- public static void main(String[] args) {
- try {
- a();
- } catch (MyException e) {
- e.getMessage();
- }
- try {
- b();
- } catch (MyException e) {
- e.toString();
- }
- try {
- c();
- } catch (MyException e) {
- e.printStackTrace();
- System.out.println("error code: " + e.val());
- }
- }
- } // end :)
- package test10;
- import javax.swing.*;
- import java.awt.*;
- /**
- * Title: 创建自己的窗体
- * Description:
- * Filename:mainFrame.java
- */
- public class mainFrame extends JFrame {
- private static final long serialVersionUID = 1L;
- /**
- *方法说明:构造器,通过传递参数来完成窗体的绘制。
- *输入参数:String sTitle 窗体标题
- *输入参数:int iWidth 窗体的宽度
- *输入参数:int iHeight 窗体的高度 返回类型:
- */
- public mainFrame(String sTitle, int iWidth, int iHeight) {
- Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();// 获取屏幕尺寸
- ImageIcon ii = new ImageIcon("middle.gif");
- setTitle(sTitle);// 设置窗体标题
- setIconImage(ii.getImage());// 设置窗体的图标
- setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);// 设置但关闭窗体时退出程序
- setSize(iWidth, iHeight);// 设置窗体大小
- int w = getSize().width;// 获取窗体宽度
- int h = getSize().height;// 获取窗体高度
- System.out.println("窗体宽:" + w + " 窗体高:" + h);
- int x = (dim.width - w) / 2;
- int y = (dim.height - h) / 2;
- setLocation(x, y);// 将窗体移到屏幕中间
- setVisible(true);// 显示窗体
- }
- public static void main(String[] args) {
- JFrame.setDefaultLookAndFeelDecorated(true);// 使用最新的SWING外观
- new mainFrame("main Frame Demo", 400, 300);
- }
- }