JAVA中给数组动态赋值及在数组中查找数据

package java14.java;

/**
* 会员操作类
* @author Administrator
*
*/
public class hydo {
int num;
//声明会员信息类数组
// hyInfo[]info=new hyInfo[5];
hyInfo[]info;
//把数组变成动态
public hyInfo[] Arraynum(int num){
info=new hyInfo[num];
return info;
}
//录入hyInfo数组信息
public hyInfo[] info(hyInfo message){
for(int i=0;i<info.length;i++){
if(info[i]==null){
info[i]=message;
break;
}
}
return info;
}

//显示用户
public void show(){

System.out.println("*****会员列表*****");
System.out.println("编号\t积分");
for(int i = 0; i < info.length; i++){
//如果对象数组中下标为空的就不打印
if(info[i]!= null){
//把对象数组中的对象取出来
System.out.println(info[i].hyid+"\t"+info[i].hynum);

}
}
}

/**
* 查找用户
* @param name
* @return
*/
public boolean searchName(String name){
boolean find=false;
for(int i=0;i<info.length;i++){
if(info[i].hyid.equals(name)){
System.out.println("该会员的积分为:"+info[i].hyid);
find=true;
break;
}
}
return find;

}

}

package java14.java;
/**
* 会员信息类
* @author Administrator
*
*/
public class hyInfo {
String hyid; //会员编号
String hynum; //会员积分
}

package java14.java;

import java.util.Scanner;

/**
* 会员信息测试类
* @author Administrator
*
*/
public class Test {
//主程序入口
public static void main(String[] args) {
//实例化键盘输入
Scanner input=new Scanner(System.in);

//实例化会员操作类
hydo b=new hydo();

System.out.print("请输入会员数量:");
int num=input.nextInt();

//调用动态数组
b.Arraynum(num);
//实例化会员信息类 会员编号机会员积分
for(int i=0;i<b.info.length;i++){
//实例化会员信息类
hyInfo a=new hyInfo();
System.out.print("请输入会员编号:");
a.hyid=input.next();
System.out.print("请输入会员信息:");
a.hynum=input.next();
//实例化会员操作类对象数组
hyInfo[]info=b.info(a);
}
b.show(); //调用会员操作类 显示用户方法

for(;;){
//实例化键盘输入
Scanner input1 =new Scanner(System.in);
//通过布尔寻找用户名
System.out.print("请输入要查找的会员编号:");
//输入异常处理
if(input.hasNextInt()){
String name1=input.next();

//判定会员类 会员信息数组中是否存在所要查找会员
if(b.searchName(name1)){
//存在
break;
}else{
//不存在
System.out.println("该会员不存在!");
break;
}

}else{ //输入异常处理 出错
continue;
}

}

}
}

//代码运行效果图

时间: 2024-10-25 04:06:52

JAVA中给数组动态赋值及在数组中查找数据的相关文章

转:用STL中的vector动态开辟二维数组

用STL中的vector动态开辟二维数组 源代码:#include <iostream>#include <vector>using namespace std;int main(){ int m, //行数     n; //列数 cout << "input value for m,n:"; cin>>m>>n;  //注意下面这一行:vector<int后两个">"之间要有空格!否则会被认

saddle中每一个属性赋值给到WebPlate中的同名属性

//将saddle中每一个属性赋值给到WebPlate中的同名属性   foreach (PropertyInfo info in saddle.GetType().GetProperties())   {    try    {     string objString = info.Name;     object objValue = saddle.GetType().GetProperty(objString).GetValue(saddle, null);     this.GetTy

38 数组动态赋值和数值的访问

1 /* 整数类型 byte shor int long 默认初始值都是 0; 2 浮点类型 float double 默认初始化值都是0.0; 3 布尔类型 boolean的默认值是false; 4 字符类型 char的默认初始化值是 '\u0000'; 5 6 */ 7 8 9 class Demo2_Array{ 10 String s; 11 char c; 12 13 public static void main(String[] args){ 14 15 Demo2_Array a

C++中动态申请二维数组并释放方法

C/C++中动态开辟一维.二维数组是非常常用的,以前没记住,做题时怎么也想不起来,现在好好整理一下. C++中有三种方法来动态申请多维数组 (1)C中的malloc/free (2)C++中的new/delete (3)STL容器中的vector 下面逐一介绍: 第一种:malloc/free 1.动态开辟一维数组 [cpp] view plaincopy //动态开辟一维数组 void dynamicCreate1Array() { int m; int i; int *p; printf("

C++动态申请二维数组与拷贝构造函数

一.C++动态申请二维数组 在C++中不能直接动态申请二维数组,经过一番搜索,发现一种动态申请二维数组较好的方法. 代码如下(MATRIX_TYPE为某一种类型,Lines和Columns): MATRIX_TYPE** elem; //C++二维矩阵动态申请空间 elem = new MATRIX_TYPE*[Lines]; elem[0] = new MATRIX_TYPE[Lines * Columns]; for(int i = 1; i < Lines; i++) elem[i] =

将source类中的属性值赋给target类中对应的属性

/** * 对象的属性值拷贝 * <p> * 将source对象中的属性值赋值到target对象中的属性,属性名一样,类型一样 * <p> * example: * <p> * source: * <p> * String name; * String address; * Integer age; * Date birthday; * <p> * target: * String name; * String address; * String

04、Java基础语法(循环嵌套、break、continue、方法、方法的重载、数组动态初始化)

复习: 流程控制语句 - 顺序结构 - 分支结构 - if-else - switch - 循环结构 - for - while - do...while 1.循环嵌套 2.控制循环的语句 3.方法 4.方法的重载 5.数组的动态初始化 1.循环嵌套 ctrl + alt + L 格式化代码 "\n"换行符 "\t"制表符 九九乘法表 for (int i = 1; i < 10; i++) { for (int j = 1; j <= i; j++)

动态数组,数组初始化,数组内存释放,向数组中添加一个元素,向数组中添加多个元素,数组打印,顺序查找,二分查找,查找数组并返回地址,冒泡排序,改变数组中某个元素的值,删除一个数值,删除所有,查找含有

 1定义接口: Num.h #ifndef_NUM_H_ #define_NUM_H_ #include<stdio.h> #include<stdlib.h> /************************************************************************/ /*数组的结构体类型                                                    */ /*******************

求学生平均成绩(数组录入赋值)Value.java

import java.util.Scanner;public class Value{ public static void main(String[] args){ Scanner in=new Scanner(System.in); System.out.println("请定义学生的人数"); int num=in.nextInt(); int[] arr=new int[num]; System.out.println(arr.length); int sum=0; for(