r vector 4 elements_Vector类与Enumeration接口
Vector类用于保存一组对象,由于java不支持动态数组,Vector可以用于实现跟动态数组差不多的功能。如果要将一组对象存放在某种数据结构中,但是不能确定对象的个数时,Vector是一个不错的选择。
例:将键盘上输入的一个数字序列的每位数字存储在vector对象中,然后在屏幕上打印出各位数字相加的结果。
import java.util.*; //Vector类和Enumeration接口都在这个包中
public class TestVector
{
public static void main(String[] args)
{
Vector v=new Vector();
int b=0;
int num=0;
System.out.println("Please enter number:");
while(true)
{
try
{
b=System.in.read(); //从键盘读入一个字节内容
}
catch(Exception e)
{
e.printStackTrace();
}
if(b=='r'||b=='n') //如果是回车或换行的话,则退出while循环,即一串数据输入完成
{
break;
}
else
{
num=b-'0';
/*由于输入的是字符数字,它的数值是它的ascii码,例如‘0’=32;‘1’=33,
所以要想让输入的‘1’在计算机里为1,必须减去32,即‘0’*/
v.addElement(new Integer(num)); //将数字存入vector
}
}
int sum=0;
Enumeration e=v.elements();
//取出Vector中的所有元素,必须使用elements()方法,它返回一个Enumeration接口。
while(e.hasMoreElements())//如果当前指示器还指向一个对象,即还有数据
{
Integer intobj=(Integer)e.nextElement();
//取出当前指示器所指的对象,并将指示器指向下一个对象。
sum+=intobj.intValue(); //将Integer对象中所包装的整数取出来,并且加到sum中。
}
System.out.println(sum);//打印出这个和
}
}
Enumeration的nextelement()方法返回的是指示器指示的对象,然后将指示器指向下一个对象。
由于vector可以存储各种类型的对象,所以编译器无法知道存储的是什么类型的对象,所以即使我们知道里面存储的是什么类型的,也要显示的说明它是什么类型的,如本例中的(Integer)e.nextElement();
Enumeration接口实现了一种机制,通过这种机制,我们就可以只用hasMoreElements()方法以及nextElement()方法就可以实现所有对象的访问。
r vector 4 elements_Vector类与Enumeration接口相关推荐
- Java Enumeration接口
import java.util.Vector; import java.util.Enumeration; /* * Enumeration接口中定义了一些方法,通过这些方法可以枚举(一次获得一个 ...
- Java Enumeration接口与Iterator接口
一.Enumeration接口 Enumeration接口中定义了一些方法,通过这些方法可以枚举(一次获得一个)对象集合中的元素. 这种传统接口已被迭代器取代,虽然Enumeration 还未被遗弃, ...
- java enumeration接口_20180824-Java Enumeration 接口
Java Enumeration接口 Enumeration接口中定义了一些方法,通过这些方法可以枚举(一次获得一个)对象集合中的元素. 这种传统接口已被迭代器取代,虽然Enumeration 还未被 ...
- java enumeration 创建_Java Enumeration接口 - Java 教程 - 自强学堂
Java Enumeration接口 Enumeration接口中定义了一些方法,通过这些方法可以枚举(一次获得一个)对象集合中的元素. 这种传统接口已被迭代器取代,虽然Enumeration 还未被 ...
- 黑马程序员--Java学习日记之集合(collection类与list接口)及泛型概述
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一,集合概念 之前我们存储大量的对象,可以使用数组: 但数组有两个缺陷: 1. ...
- Java多线程的实现方式-Thread 类,Runnable 接口
在 Java 的 JDK 开发包中,已经自带了对多线程技术的支持,可以方便地进行多线程编程.实现多线程编程的方式主要有两种:一种是继承 Thread 类,另一种是实现 Runnable 接口.下面详细 ...
- 3.vector实现字符串类
3.vector实现字符串类 本章前言: 身为土生土长的中国程序员,你肯定要用unicode来编写程序.但是由wchar_t数组实现的字符串准确点说应该叫字符数组,但它在使用时比较繁琐,而且容易出现数 ...
- C++ string类和常用接口的实现
目录 C++ string类 string类的常用接口说明 string类(实现常用接口) C++ string类 值得注意的是 , string不是STL的容器,string是basic_strin ...
- Service 层和 Dao 层有必要为每个类都加上接口吗?
以下文章来源方志朋的博客,回复"666"获面试宝典 作者:架构思维 toutiao.com/i6882356844245975563 前几天刷头条又刷到了「Service层和Da ...
最新文章
- Hibernate Annotation 学习
- python自动化测试数据驱动_Python 自动化测试(四):数据驱动
- 【转】c#数字图像处理(二)彩色图像灰度化,灰度图像二值化
- python中以表示语块_scikitlearn:将数据拟合成块与将其全部拟合到on
- 苹果cms后台微信小程序影视源码-带视频教程
- css3直线运动_纯css3实现曲线运动——贝塞尔曲线(cubic-bezier)
- 直播app开发必备五步流程
- 地理加权回归出现多重共线性如何解决
- 关于赚钱的 6 个重要认知,多数人都不知道
- 嵌入式系统开发笔记33:关于“人生苦短,我学Python”这句话的由来
- 中级java面试问题大全及答案大全
- 00003 不思议迷宫.0001:解密Lua脚本
- windows中docker 安装和使用
- 增值电信业务经营许可证怎么续期,需要什么材料
- GraalVM - 云原生时代的 Java 笔记
- 如何一键关闭所有视窗?
- Mac OS X 10.9.5系统下创建quick3.3final项目出现问题
- python微信交流群,零基础、入门、大牛都可加入!
- Linux第十节——信号
- VIVADO的.XCI文件探索之二:在项目中使用XCI文件
热门文章
- 如何在 C# 中使用 Dapper ORM
- 初识ABP vNext(8):ABP特征管理
- .Net Core微服务入门全纪录(完结)——Ocelot与Swagger
- 一切都要从华为云 CloudIDE 酷似 VS Code 说起
- 【.NET Core 跨平台 GUI 开发】第三篇:Gtk# 表格布局与事件处理
- .NET 云原生技术使用调查
- 《从零开始学ASP.NET CORE MVC》课程介绍
- Service Fabric 用 Powershell 部署应用到本地
- 在.NET Core类库中使用EF Core迁移数据库到SQL Server
- 开源纯C#工控网关+组态软件(六)图元组件