zoukankan      html  css  js  c++  java
  • 笔试题【二维矩阵操作,文件存取】

    给定二维整形数组int[][]

    1.将其用矩阵的形式输出

    2.设计方法,将上矩阵的一圈提取出来,并存储到新的数组db[20]中,该方法返回一圈数字的数目

    3.存储上述数组db[20],并做读取测试。

      1 import java.io.FileInputStream;
      2 import java.io.FileOutputStream;
      3 import java.io.IOException;
      4 import java.io.ObjectInputStream;
      5 import java.io.ObjectOutputStream;
      6 import java.io.Serializable;
      7 
      8 
      9 public class Test implements Serializable{
     10     //给定的数组
     11     int[][] mb={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16},{17,18,19,20}};
     12     //用于存储一圈数字的数组
     13     int[][] db=new int[16][1];
     14     
     15     public static void main(String[] args) {
     16         // TODO Auto-generated method stub
     17         Test test=new Test();
     18         test.print(test.mb, 1);
     19         
     20         //提取一圈数字并现实
     21         test.MoveWall(test.mb);
     22         test.print(test.db, 2);
     23         
     24         //存储文件
     25         test.savefile2ser(test);
     26         
     27         //将db[]清空并显示,用于下一步测试文件确实读取成功
     28         test.db=new int[16][1];
     29         test.print(test.db, 2);
     30         
     31         //读取文件并现实
     32         test=new Test().readfilefser();
     33         test.print(test.db, 2);
     34         
     35     }
     36     
     37     //获取一圈数字,存储到db[],且返回数字的个数
     38     public int MoveWall(int[][] a){
     39         int temp = 0;
     40         for (int i = 0; i < a[a.length-1].length; i++) {
     41             db[temp][0]=a[0][i];
     42             temp++;
     43         }
     44         temp--;
     45         for (int i = 0; i < a.length; i++) {
     46             db[temp][0]=a[i][a[a.length-1].length-1];
     47             temp++;
     48         }
     49         temp--;
     50         for (int i = a[a.length-1].length-1; i >=0; i--) {
     51             db[temp][0]=a[a.length-1][i];
     52             temp++;
     53         }
     54         temp--;
     55         for (int i = a[a.length-1].length-1; i > 0; i--) {
     56             db[temp][0]=a[i][0];
     57             temp++;
     58         }
     59         return temp;
     60         
     61     }
     62     //用于显示矩阵及db[] o=1显示矩阵,o=2显示db[]
     63     public void print(int[][] temp,int o){
     64         if (o==1) {
     65             for (int i = 0; i < temp.length; i++) {
     66                 for (int j = 0; j < temp[i].length; j++) {
     67                     System.out.print(temp[i][j]+" ");
     68                 }
     69                 System.out.println();
     70             }
     71         }else if (o==2) {
     72             for (int i = 0; i < temp.length; i++) {
     73                 for (int j = 0; j < temp[i].length; j++) {
     74                     System.out.print(temp[i][j]+" ");
     75                 }
     76             }
     77             System.out.println();        
     78         }else {
     79             System.out.println("wrong parameter o");
     80         }
     81     }
     82     
     83     //save file to File.ser
     84     public void savefile2ser(Test test) {
     85         try {
     86             FileOutputStream file=new FileOutputStream("File.ser");
     87             ObjectOutputStream o=new ObjectOutputStream(file);
     88             o.writeObject(test);
     89             o.close();
     90             
     91         } catch (IOException e) {
     92             // TODO Auto-generated catch block
     93             e.printStackTrace();
     94         }
     95     }
     96     //read file from File.ser
     97     public Test readfilefser(){
     98         try {
     99             FileInputStream file=new FileInputStream("File.ser");
    100             ObjectInputStream o=new ObjectInputStream(file);
    101             Test test=(Test) o.readObject();
    102             o.close();
    103             return test;
    104         } catch (Exception e) {
    105             // TODO Auto-generated catch block
    106             e.printStackTrace();
    107         }
    108         return null;
    109     }
    110 }
  • 相关阅读:
    2017-2018-1 20155218 《信息安全系统设计基础》第十一周学习总结
    # 课堂测试(CH6)20155218
    Elasticsearch6.0 IKAnalysis分词使用
    ELK6.0环境搭建及配置
    使用PHP抓取网站ico图标
    centos下apache+mysql+php安装及配置
    PHP的(Thread Safe与Non Thread Safe)
    作业九
    附加题
    作业八
  • 原文地址:https://www.cnblogs.com/sdrzlyz/p/3450036.html
Copyright © 2011-2022 走看看