/*java是面向对象的编程语言,所以JAVA语言中的数组也略有不同数组元素可以是想要的对象;*/
class D_Card{
long card_num;
double balance;
D_Card(long n,double b){
card_num=n;
balance=b;
}
}
public class array {
public static void main(String args[])
{
int x[];
D_Card dc[];
x=new int[3];
dc=new D_Card[2];
System.out.println("x="+x+"dc="+dc);
System.out.println(x[0]);
System.out.println(dc[0]);
}
}
//当数组元素为参考类型时,若未赋值,默认为null
/*x=[I@15db9742dc=[Lc.D_Card;@6d06d69c
0
null*/
/*数组的三种初始方式*/
(1)声明和创建数组对象的合写
int x[]=new int[3];
D_Card dc=new D_Card[2];
(2)声明和创建数组对象和赋值的合写
int x[]={20,30,40};
D_Card dc[]={new D_Card(2323,2,3),new Card(323,4,5)};
//
int x[]=new int{2,3,4};
D_Card dc[]=new D_Card{new D_Card{3,43,3},new D_Card{1,2,3}};
//计算二位数组的行数、列数
class array{
public static void main(String args[]){
int y[][]=new int[2][3];
System.out.println("y="+y);
System.out.println("y.length "+y.length);
System.out.println("y[0].length "+y[0].length);
}
}/*y=[[I@15db9742
y.length 2
y[0].length 3 */
数组操作实例:
package c;
import java.io.*;
class arr{
int a[];
arr(int n){
int a[]=new int[n];
}
int getmax(){
int max=a[0];
for(int i=0;i<a.length;i++)
{
if (a[i]>max)
max=a[i];
}
return max;
}
int getmin(){
int min=a[0];
for(int i=0;i<a.length;i++){
if(a[i]<min)
a[i]=min;
}
return min;
}
int getsum(){
int sum=0;
for(int i=0;i<a.length;i++){
sum=sum+a[i];
}
return sum;
}
int getaverage(){
int aver=getsum()/a.length;
return aver;
}
}
public class ArrayOperator {
public static void main(String args[]){
String s=null;int n=0;arr ab=null;
try{
System.out.println("输入数组元素个数: ");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
s=br.readLine();
n=Integer.parseInt(s);
ab=new arr(n);
for(int i=0;i<ab.a.length;i++){
System.out.println("输入a["+i+"]:");
s=br.readLine();ab.a[i]=Integer.parseInt(s);
}
}catch(IOException e){System.out.println(e.toString());}
System.out.println("max="+ab.getmax());
System.out.println("min="+ab.getmin());
System.out.println("getaverage="+ab.getaverage());
System.out.println("sum="+ab.getsum());
}}
输入学生信息,然后排序并获得相应学生信息:
package c;
import java.io.*;
//学生信息输入
class pst{
Student2 st[]=new Student2[30];
void mkst(){
String sn=null,nm=null,ss=null,as=null;
int a=0;
try{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
for(int i=0;i<st.length;i++)
{
System.out.println("studentNo:");
sn=br.readLine();
System.out.println("StudentName:");
nm=br.readLine();
System.out.println("StudentSex:");
ss=br.readLine();
System.out.println("studentAge:");
as=br.readLine();a=Integer.parseInt(as);
st[i]=new Student2(sn,nm,ss,a);
}
}catch(IOException e){System.out.println(e.toString());}
}
void sortp(){
int i,j;
Student2 t=null;
for(i=0;i<st.length;i++){
for(j=i;j<st.length;j++){
if(st[i].age>st[j].age)
{
t=st[i];
st[i]=st[j];
st[j]=t;
}
}
}
for(i=0;i<st.length;i++)
System.out.println(st[i].toString());
}
void searchp(String sn){
int i=0;
for(i=0;i<st.length;i++){
if(st[i].studentNo.equals(sn)){
st[i].updateage(st[i].getage()+1);
System.out.println(st[i].toString());
break;
}
}
}
}
class Student2{
String studentNo,name,sex;
int age;
String getstudentNo(){
return studentNo;
}
String getname(){
return name;
}
String getsex(){
return sex;
}
int getage(){
return age;
}
void updateage(int a){
age=a;
}
Student2(String sn,String nm,String psex,int a){
studentNo=sn;
name=nm;
sex=psex;
age=a;
}
public String toString(){
return(studentNo+";"+name+";"+sex+";"+age+";");
}
}
public class ArrayOperator1{
public static void main(String args[]){
int i;
String sn;
pst pst1=new pst();
pst1.mkst();
pst1.sortp();
try{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("studentNo:");
sn=br.readLine();
pst1.searchp(sn);
}catch(IOException e){System.out.println(e.toString());}
}
}