package java_prac2;
import java.util.*;
/**
* <p>Title: 矢量操作</p>
* <p>Description: 演示一个矢量(Vector)的基本操作</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Filename: operateVector.java</p>
* @author 王海涛
* @version 0.1
*/
public class Vector_operate
{
/*
*<br>方法说明:生成一个4*4的二维Vector,供使用。
*<br>输入參数:
*<br>输出变量:Vector
*<br>其他说明:
*/
public Vector buildVector(){
Vector vTemps = new Vector();
for(int i=1;i<5;i++){
Vector vTemp = new Vector();
for (int j=1;j<5;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 insert(Vector 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 delete(Vector 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 updata(Vector 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 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 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)
{
Vector_operate ov = new Vector_operate();
Vector vTemp = ov.buildVector();
ov.print("向量的结果",vTemp);
Vector vResult = ov.insert(vTemp,2,"");//新建一个向量并初始化
ov.print("插入结果",vResult);
Vector vResultup = ov.updata(vResult,2,"");
ov.print("更新结果",vResultup);
Vector vResultnow = ov.delete(vResultup,2);
ov.print("删除后",vResultnow);
}
}

每天一点儿JAVA-向量的操作的更多相关文章

  1. Java Spring mvc 操作 Redis 及 Redis 集群

    本文原创,转载请注明:http://www.cnblogs.com/fengzheng/p/5941953.html 关于 Redis 集群搭建可以参考我的另一篇文章 Redis集群搭建与简单使用 R ...

  2. Java的JDBC操作

    Java的JDBC操作 [TOC] 1.JDBC入门 1.1.什么是JDBC JDBC从物理结构上来说就是java语言访问数据库的一套接口集合,本质上是java语言根数据库之间的协议.JDBC提供一组 ...

  3. Java读写文本文件操作

    package com.test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; ...

  4. 第26章 java进制操作

    java进制操作 1.二进制 二进制只有0和1,逢二进一 二进制多用在计算机中,来自计算机硬件的开关闭合 2.位运算 分别讲解: 2.1.按位与 & 两位全为1,结果才为1 0&0=0 ...

  5. Java生成和操作Excel文件(转载)

    Java生成和操作Excel文件   JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该A ...

  6. Java使用Jdbc操作MySql数据库(一)

    这个示例是Java操作MySql的基本方法. 在这个示例之前,要安装好MySql,并且配置好账户密码,创建一个logininfo数据库,在数据库中创建userinfo数据表.并且在表中添加示例数据. ...

  7. Java的大数操作分为BigInteger和BigDecimal

    Java的大数操作分为BigInteger和BigDecimal,但这两给类是分开使用的,有时候在编程的时候显得略微繁琐,现在编写了一个将二者合二为一的大数操作类. 大数操作类代码如下: 1 pack ...

  8. Java中创建操作文件和文件夹的工具类

    Java中创建操作文件和文件夹的工具类 FileUtils.java import java.io.BufferedInputStream; import java.io.BufferedOutput ...

  9. Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式

    解析:Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式.面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是InputStream和Out ...

  10. java常见文件操作

    收集整理的java常见文件操作,方便平时使用: //1.创建文件夹 //import java.io.*; File myFolderPath = new File(str1); try { if ( ...

随机推荐

  1. 14.6.2 Moving or Copying InnoDB Tables to Another Machine 移动或者copy InnoDB 表到另外的机器

    14.6.2 Moving or Copying InnoDB Tables to Another Machine 移动或者copy InnoDB 表到另外的机器 这个章节描述技术关于移动或者copy ...

  2. 回文(manacher)

    裸manacher 我竟然写跪了………… 一个地方(偶数)没写清楚…… 我OOXOXOXOXXOXO #include<cstdio> #include<cstdlib> #i ...

  3. Eclipse中快捷键的使用

    1:引入包   ctrl+shift+o 2:对输入进行提示:Alt+/ 3: 全局搜索:crtrl + h 4:Eclipse创建方法快捷键Alt+shift+M 5:Eclipse创建局部变量快捷 ...

  4. 函数指针玩得不熟,就不要自称为C语言高手(函数指针是解耦对象关系的最佳利器,还有signal)

    记得刚开始工作时,一位高手告诉我说,longjmp和setjmp玩得不熟,就不要自称为C语言高手.当时我半信半疑,为了让自己向高手方向迈进,还是花了一点时间去学习longjmp和setjmp的用法.后 ...

  5. 生产者、消费者 C源码,gcc编译通过

    /*生产者.消费者*/ #include<stdio.h> #include<pthread.h> #define BUFFER_SIZE 16 /***struct prod ...

  6. 14.3.4 Phantom Rows 幻影行

    14.3.4 Phantom Rows 幻影行 所谓的幻读为发生在一个事务 当相同的查询产生不同的结果集在不同的时间. 比如,如果一个SELECT被执行2次, 但是第2次返回的记录不是第一次返回的记录 ...

  7. 【BASH】自己主动清理rman脚本备份文件

    ************************************************************************ ****原文:blog.csdn.net/clark_ ...

  8. Java使用Socket传输文件遇到的问题(转)

    1.写了一个socket传输文件的程序,发现传输过去文件有问题.找了一下午终于似乎找到了原因,记录下来警示一下: 接受文件的一端,向本地写文件之前使用Thread.sleep(time)休息一下就解决 ...

  9. hdu4611 Balls Rearrangement

    Balls Rearrangement Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) ...

  10. uva10480(最小割)

    传送门:Sabotage 题意:给定多个城市的网络,每个城市之间的通信有花费,要求使得首都和最大城市之间的通信断掉的最小花费.要求输出任意一组砸掉的边. 分析:跑一遍最大流dinic后,根据最小割定理 ...