概述
Ⅰ.⼀维数组
Ⅱ.数组作为函数的参数、返回值
Ⅲ.数组的基本操作(插⼊、删除、扩容) 数组的排序
习题:
1,下列数组的声明有哪些是对的?错的应该怎么修改?
A. int[] a; 正确
B. int a[] = new int[3]; 正确
C. int[] a; a = {1,2,3,4,5}; int a[]={1,2,3,4,5};
必须把变量定义和显式初始化放在同一行.
D. int[] a = new int[3]{1,2,3}; int[]a=new int[]{1,2,3};
方括号中数字去掉
2, 数组 的元素通过(下标) 来访问, 数组Array 的⻓度为 (Array.length)。
3,数组下标访问超出索引范围时会抛出: (下标越界,ArrayIndexOutOfBoundsException)异常。
4,引⽤数组元素时,数组下标可以是(AB)。
A. 整型变量
B.整型表达式
C.字符串
D.以上均可
5, 执⾏完代码 int[] x = new int[25],以下选项正确的是 (A)。
A.x[24]为0
B.x[24]未定义
C.x[25]为0
D.x[0]为null
6,下列语句会造成数组 newint[10] 越界的是_(D)__。
A.a[0] +=9;
B.a[9]=10;
C.--a[9]
D.for(int i = 0;i<=10;i++){ a[i]++}
7,写⼀个函数,计算⼀个整数数组的平均值。
package day6;
public class T67 {
public static void main(String[] args) {
System.out.println(aver(new int[]{10, 15, 20, 25}));
}public static double aver(int[] n){
int sum = 0;
for(int i = 0; i<n.length; i++){
sum += n[i];
}
return (double)sum / n.length;
}
}
8,⾃定义⼀个整数数组a,读⼊⼀个整数n,如果n在数组中存在,则输出n的下标;
如果不存在,输出-1。
package day6;
import java.util.Scanner;
public class T68 {
public static void main(String[] args) {//键入
int[] a = {1,3,5,7,9};//自定义数组a
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();//定义
for(int i = 0; i<a.length; i++){ //0.1.2.3.4为下标
if (n == a[i]){
System.out.println(i);
return;
}
}
System.out.println(-1);
}
}
9,给定⼀个数组,输出数组中的最⼤值和最⼩值。
⽤变量min来统计数组中的最⼩值
⽤变量max来统计数组中的最⼤值
先让min和max都等于a[0]
然后扫描数组中剩下的元素
如果某个元素⽐max更⼤,则把该元素的值赋值给max
如果某个元素⽐min更⼩,则把该元素的值赋值给min
这样,当扫描完成时
min中保存的就是最⼩的元素,max中保存的是最⼤的元素
package day6;
public class T69 {
public static void main(String[] args) {
int[] a = {1,3,4,2,7};
minMax(a);
}
public static void minMax(int[] a){
int min = a[0], max = a[0];
for(int i = 1; i<a.length; i++){
if (min > a[i]){
min = a[i];
continue;
}
if (max < a[i]){
max = a[i];
continue;
}
}
System.out.println(min);
System.out.println(max);
}
}
10,给定⼀个数组,把这个数组中所有元素顺序进⾏颠倒。
package day6;
public class T10 {
public static void main(String[] args) {
int[] a = {3,1,2,5,7};
reverse(a);
printint(a);
}
public static void reverse(int[] a){
//i变化为数组长度的一半
for(int i = 0; i<a.length/2; i++){
//交换a[i]和a[a.length-i-1]
int t = a[i];
a[i] = a[a.length - 1 - i];
a[a.length - 1 - i] = t;
}
}
public static void printint(int[] a){
for(int i = 0; i<a.length; i++){
System.out.print(a[i] + "t");
}
System.out.println();
}
}
11,完成数组的冒泡排序算法。
给定⼀个数组: int[] a = {1,3,2,7,5}
利⽤冒泡排序对其按照从⼩到⼤的顺序排序,然后输出结果。
package day6;
public class T11{
public static void main(String [] args){
int [] nums={1,3,2,7,5};
//冒泡排序:一个数值与他后面的比较大小,互换位置
for(int i=0;i<nums.length-1;i++){
for(int j=0;j<nums.length-1-i;j++) {
if(nums[i]>nums[j]){
int temp=nums[i];
nums[i]=nums[j];
nums[j]=temp;
}
}
}
for (int a:nums){
System.out.print(a+" ");
}
}
}
12,使⽤第⼆种算法对数组进⾏排序。
第二种方法即为选择排序:
package day6;
public class T12 {
public static void main(String [] args){
int [] nums={1,3,2,7,5};
//选择排序:固定值与其他值依次比较大小,互换位置
for(int i=0;i<nums.length-1;i++){
for(int j=i+1;j<nums.length;j++) {
if(nums[i]>nums[j]){
int temp=nums[i];
nums[i]=nums[j];
nums[j]=temp;
}
}
}
for (int a:nums){
System.out.print(a+" ");
}
}
}
最后
以上就是纯情玫瑰为你收集整理的java6【数组】的全部内容,希望文章能够帮你解决java6【数组】所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复