当前位置:
文档之家› java中数组的学习完整版一
java中数组的学习完整版一
System.out.println(e.getMessage());
}
}
}
//输入方法二(这里发生了方法的重载)
public static voidscoreInput(float[] arr){
Scanner sc=new Scanner(System.in);
int i=0;
while(i<arr.length){
import java.util.*;
class Average1{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
float avg=0;
float sum=0;
int count=0;
int n=0;
//result.delete(result.length()-1,result.length());
//System.out.print(result.substring(0,result.length()-1));
//result.setCharAt(result.length()-1,' ');
float sum=0;
int count=0;
int n=0;
StringBuilder result=new StringBuilder();//这非同步的字符串缓冲类
System.out.println("班级人数:");
try{
n=sc.nextInt();
}catch(InputMismatchException e0){
}catch(InputMismatchException e1){
}
}
//同过调用求平均值的放法来求一门课的平均值
avg=average(cj);
//求最高分
max=maxScore(cj);
//求最低分
min=minScore(cj);
//完成数组的原样输出
for(int i=0;i<cj.length;i++){
}
float[] cj = new float[n];//完成数组的声明
System.out.println("开始输入班级成绩:");
while(count<n){
try{//完成数组的元素的引用和初始化
cj[count]=sc.nextFloat();
//sum+=cj[count];
count++;
max=arr[i];
}
}
return max;
}
//求最低分方法
public static float minScore(float[] arr){
float min=arr[0];
for(int i=1;i<arr.length;i++){
if(min>arr[i]){
min=arr[i];
}
}
float min=arr[0];
for(int i=1;i<arr.length;i++){
if(min>arr[i]){
min=arr[i];
}
}
return min;
}
方法的重载:两个方法的名字一样,但参数的个数或类型或顺序不一样,这时我们说方法法生了重载。其中我们把方法中的方法名,以及参数的个数,类型,顺序,叫做方法的型构。换句话说我们可以说如果两个方法的型构不一样,我们说着两个方法发生了重载。
数组最大值、最小值
import java.util.*;
class ScoreHandler{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
float avg=0;
float max=0;
float min=0;
if(min>cj[i]){
min=cj[i];
}
}
//完成数组的输出
for(int i=0;i<cj.length;i++){
//System.out.print(cj[i]+":");
result.append(cj[i]+":");
}
result.deleteCharAt(result.length()-1);
1.
一维数组:定义、初始化、使用(相关的算法,常用系统类的使用)
多维数组:定义、初始化、使用
增强for循环,break、continue控制语句的学习
2.
什么是数组?
例子
//要求把一个班的一门课的成绩,加起来求平均值;
import java.util.*;
class Average{
public static void main(String[] args){
//length在这里是数组对象的一个静态属性,它始终存储的是数组的长度。
System.out.print(cj[i]+":");
}
System.out.print("\b");
System.out.println("平均值:"+avg);
System.out.println("程序结束");} Nhomakorabea}
通过上面的例子我们完成了一维数组的定义,初始化,并且也完成了数组的输出。
System.out.print(result);
System.out.println();
System.out.println("平均值:"+avg+":最高分:"+max+":最低分:"+min);
System.out.println("程序结束");
}
}
以上是通过分步来求最大、最小;下面我们把求最大最小的过程进行封装成一个方法来简化求解过程,方便以后多次求解同类问题。
import java.util.*;
class ScoreHandler1{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
float avg=0;
float max=0;
float min=0;
try{//完成数组的元素的引用和初始化
cj[count]=sc.nextFloat();
sum+=cj[count];
count++;
}catch(InputMismatchException e1){
}
}
avg=sum/n;//avg=sum/count;
for(int i=0;i<cj.length;i++){//完成数组的输出,cj.length表示的就是数组的长度。
具体的内存图:
2、一步法:
A、int[] arr = new int[6];//这样做完后,arr中有6个元素,它们的默认值是0;
B、int[] arr = new int[]{1,2,3,4};//这样这个数组arr中的元素个数是四个,并且初始值为1,2,3,4;
C、int[] arr={1,2,3,4};//这种做法是静态的声明方法,是为了给c转过来的程序员,方便使用。
}
float[] cj = new float[n];//完成数组的声明
System.out.println("开始输入班级成绩:");
while(count<n){
try{//完成数组的元素的引用和初始化
cj[count]=sc.nextFloat();
sum+=cj[count];
count++;
Scanner sc = new Scanner(System.in);
float avg=0;
float sum=0;
int count=1;
while(count<=3){
sum=sum+sc.nextFloat();
count++;
}
avg=sum/(count-1);
System.out.println("平均值是:"+avg);
//System.out.print(result.substring(0,result.length()-1));
//result.setCharAt(result.length()-1,' ');
System.out.print(result);
System.out.println();
System.out.println("平均值:"+avg+":最高分:"+max+":最低分:"+min);
public static voidscoreInput(float[] arr,Scanner sc){
int i=0;
while(i<arr.length){
//完成数组的元素的引用和初始化
try{
arr[i]=sc.nextFloat();
//sum+=cj[count];
i++;