实验二 Java程序设计基础及简单类的设计.doc_第1页
实验二 Java程序设计基础及简单类的设计.doc_第2页
实验二 Java程序设计基础及简单类的设计.doc_第3页
实验二 Java程序设计基础及简单类的设计.doc_第4页
实验二 Java程序设计基础及简单类的设计.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验二 Java程序设计基础及简单类的设计一、实验目的1.掌握数组类型的声明和动态内存申请,理解数组的引用模型;2.掌握String类的应用及对字符串变量的操作;3.掌握类的声明格式和多种封装措施,理解对象的引用模型;4.掌握成员变量和方法的概念及构造方法的定义和使用;5.掌握方法的重载。二、实验内容1.给定一个一维整型数组,实现以下功能:(1)求数组元素中的最大值;(2)求数组元素中的最小值;(3)求某个关键字在数组中的序号,若给定关键字在数组中不存在,返回-1;(4)将数组中所有元素按升序重新排列;(5)判断数组的元素序列是否己排序;要求每个功能用一个方法实现,并编写main方法进行测试。package java实验二;import java.util.Arrays;public class 实验二public static int Max(int table) int b=table0;for(int i=1;itable.length;i+)if(btablei)b=tablei;return b;public static int Min(int table) int c=table0;for(int i=1;itablei)c=tablei;return c;public static int 索引位置(int table) int index=Arrays.binarySearch(table,8); if(index=0) return -1; else return index; public static int 数组排序(int table) Arrays.sort(table); return table; public static boolean 判断排序(int table)for(int i=0;itable.length-1;i+)if(tableitablei+1)for(int j=0;jtablej+1)return false;return true;public static void main(String args) / TODO 自动生成的方法存根 int a=new int2,5,6,8,0,7,9; System.out.println(数组是否已经排序:+判断排序(a);System.out.println(数组元素的最大值为:+实验二.Max(a); System.out.println(数组元素的最小值为:+实验二.Min(a); System.out.println(8的索引位置是:+实验二.索引位置(a); a=实验二.数组排序(a); System.out.print(排序后的数组: ); for(int i=0;ia.length;i+) System.out.print( ai+,); System.out.println(); System.out.println(数组是否已经排序:+实验二.判断排序(a);2.编写一个方法找出两个字符串中所有共同的字符,并在main方法中通过键盘输入两个字符串进行测试。package java实验二; import java.util.*;import javax.swing.*;public class 寻相同字符 public void 找相同字符(String s1,String s2)char c1 = s1.toCharArray(); char c2 = s2.toCharArray(); ArrayList lis = new ArrayList(); for(int i=0; ic1.length; i+) for(int j=0; jc2.length; j+) if(c1i = c2j ) lis.add(c1i); for(int i=0; ilis.size(); i+) for(int j=0; jlis.size(); j+) if(lis.get(i) = lis.get(j)&i!=j) lis.remove(lis.get(i); for(int i=0; i _balance) System.out.println(账户:+this._account+ 卡上余额不足,取款失败!+n + 操作时间:+this.操作时间()+n ); return; this._balance = this._balance - amount; System.out.println(成功取款:+amount); checkAccount(); public Date 操作时间() Date a=new Date(); return a; public void checkAccount() /显示进行操作后的余额和操作的时间 System.out.println(账户:+this._account+ 卡上余额为:+_balance+n +操作时间:+this.操作时间()+n ); public String getID() return _ID; public void setID(String iD) /建户人证件号码 _ID = iD; public String getAccount() return _account; public void setAccount(String account ) /新建账号名称 this._account =account ; public String getName() return _name; public void setName(String name) /建户人姓名 this._name = name; public String getAccounTimet() SimpleDateFormat sdf = new SimpleDateFormat(yyyy:MM:dd HH:mm:ss); return sdf.format(this._accounTimet); public void setAccounTimet(Date accounTimet) /开户时间 this._accounTimet = accounTimet; public double getBalance() return _balance; public void setBalance(double balance) /存款余额 this._balance = balance; public static void main(String args) BankAccount account = new BankAccount(, ,0.00); account.setAccounTimet(account.操作时间(); System.out.println(输出开户时间:); System.out.println(account.getAccounTimet(); System.out.println(请输入账户信息:); System.out.println(请输入身份证号码:); account.setID(4509*); System.out.println(account.getID(); System.out.println(请输入账户号码:); account.setAccount(000001 ); System.out.println( account.getAccount(); System.out.println(请输入你的名字:); account.setName(张三); System.out.println(account.getName(); System.out.println(请输入你要存进账户里的钱:); account.setBalance(500.00); System.out.println(account.getBalance(); System.out.println(输出查询信息:); account.checkAccount(); account.deposit(100.00); account.withDrawal(400.00); account.checkAccount(); account=null; System.gc(); System.out.println(您已经成功销户); 4.声明一个矩阵类,使用二维数组存储矩阵元素,实现以下方法:(1)输出矩阵类中所有元素值;(2)返回当前矩阵的转置矩阵;(3)判断当前矩阵是否是上三角矩阵;(4)将当前矩阵加上另一矩阵;(5)将当前矩阵与另一个矩阵相加,不改变当前矩阵;(6)判断当前矩阵与另一个矩阵是否相等。package java实验二;import javax.swing.*;public class Matrix /创建矩阵类public int row; /二维数组行数public int rank; /二维数组列数public int mat; /创建数组(成员变量)public Matrix(int a, int b) /构造方法,初始化row = a; rank = b; mat = new introwrank; public void 输入数组() /创建输入数组方法 for (int i = 0; i row; i+) for (int j = 0; j rank; j+) String ij=JOptionPane.showInputDialog(请输入数组中的元素); matij=Integer.parseInt(ij); public void Output() /输出数组中元素的值 System.out.println(Matrix=); for (int i = 0; i row; i+) for (int j = 0; j rank; j+) System.out.print(matij + ); System.out.println(); System.out.println(); public Matrix Trans() /矩阵转置 Matrix c = new Matrix(rank,row); for (int i = 0; i c.row; i+) for (int j = 0; j c.rank; j+) c.matij = matji; return c; public static void isUpperTriangularMatrix(Matrix x) for(int j=0;jx.rank;j+)for(int i=j+1;ix.row;i+)if(x.matij!=0)System.out.println(x.mat+此矩阵不是上三角矩阵);return;System.out.println(x.mat+此矩阵为上三角矩阵); public int Plus1(Matrix a) if (a.row = row & a.rank = rank) for (int i = 0; i row; i+) for (int j = 0; j rank; j+) matij = matij + a.matij; else System.out.println(matrixAdd error!); return mat; public Matrix Plus(Matrix a) /创建返回值为本类的方法(参数为本类的一个对象)/行数列数相同的矩阵的加和 Matrix c=new Matrix(row,rank); if (a.row = row & a.rank = rank) for (int i = 0; i row; i+) for (int j = 0; j rank; j+) c.matij = matij + a.matij; else System.out.println(matrixAdd error!); return c; public boolean equals(Matrix b) if (b.row = row & b.rank = rank) for (int i = 0; i row; i+) for (int j = 0; j rank; j+) if(b.matij!=matij) return false; return true; public static void main(String args) Matrix y=new Matrix(4, 4);System.out.println(请输入数组中的元素);y.输入数组();System.out.println(输出数组:); y.Output(); Matrix z=new Matrix(4, 4); System.out.println(请将刚输入的数组进行转置); z=y.Trans(); System.out.println(输出转置后得到的另一个矩阵:); z.Output(); System.out.println(请判断输入的矩阵是否为上三角矩阵:); isUpperTriangularMatrix(y); Matrix p=new Matrix(4, 4); System.out.println(在不改变原矩阵的情况下加另一矩阵); p=y.Plus(z); System.out.println(输出和矩阵);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论