java简单入门(3)一维数组

时间:2024-03-19 11:32:24

//数组的排序方法 Arrays.sort(priceArray);

 

一维数组的三种格式

1.

float[ ] ff = new float[]{1.2f,5.3f,4.3f,6.3f}

2.

int[ ] a = {1,5,6,8,9,5,4}

3.

int[ ] a = new int[2];

a[0] = 1;

a[1] = 6;

 

 

通过下标获取数组中对应的元素

int[ ] a = {1,5,6,8,9,5,4};

syso(a[0]);

 

获取数组的长度

 

syso(a.length)

遍历循环数组

 

 

for(int x=0;a<arr.length;x++){syso(a[x]);}

 

错误类型

1.a<array.length

ArrayIndexOutOFVoundsException

数组下标越界异常

2.输出是直接写数组名array

会出现[[email protected]]内存地址

byte[] a={1,2,3,5,4};

short[] b={55,22,66,22,};

int[] c={4,5,5};

String[] st={"sad","ad","问问","我确认","闺女","个",};

long[] d={1,2,3,5,4};

float[] e={5.5f,2.2f,6.6f,2.2f};

double[] f={4.1,5.3,5.2};

char[] g={'2','A','将'};

System.out.println(g);

boolean[] h={true,false,4>1,4<1?true:false};

System.out.println(a[0] + b[0] +c[0]+d[1]+e[2]+d[0]+e[1]+f[0]+g[1]+st[2]);

System.out.println(h[1]);

循环嵌套

print不换行

println换行

System.out.println();换行

外层for循环是列数

内层for循环是行数

 

列数for (int a=1;a<=6;a++ ){

行数for(int b=1;b<=10;b++){

System.out.print("#");

}

System.out.println();

}

 

自动换行

for (int a= 1 ; a<=100;a++){

System.out.print(a);

if(a%5==0){

System.out.println();

}

}

 

冒泡排序

package ForJob;

import java.util.Scanner;

public class MaoPao {

    /**
     * @param args
     */
    public static void main(String[] args) {
        /*冒泡排序*/
        int[] arr={6,8,7,5,4,9,3,};
        for(int i=0;i<arr.length-1;i++){
            for(int j=0;j<arr.length-1;j++){
                if(arr[j]>arr[j+1]){
                int temp=0;
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
                }
                System.out.println(arr[j]);
                
            }
            
        }
    
        
    }

}
 

1、在main()方法中定义数组
 * float[] flo = {3.26f, 6.32f, 8.36f, 9.23f, 2.1f, 12.5f, 12, 34.5f, 1.2f};
 * 求出偶数下标对应的元素的最大值?

java简单入门(3)一维数组

/*2、在main方法中创建int型一维数组{8, 9, 10, 7, 38, 15, 34, 12, 1},
 * 求数组中下标为奇数的元素乘积

 

java简单入门(3)一维数组

package 周考练习题;

public class D4 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
/*4、在main()方法实例化一个long类型的数组,
 * 并且给数组的元素赋值, 将数组当中的最大值和最小值交换位置,
 * 并输出交换完位置以后的结果
 */

        long[] arr =new long[6];
        int a = 0;
        int minIndex = 0;
        int maxIndex = 0;
        for (int i = 0; i < arr.length; i++) {
            if (a<6) {
                arr[i] = a;
                a++;
        }
        
        }
        for (int i = 0; i < arr.length; i++) {
            if (arr[minIndex]>arr[i]) {
                minIndex = i;
            }
            if (arr[maxIndex] < arr[i]) {
                maxIndex = i;
            }
        }
        long temp = arr[maxIndex];
        arr[maxIndex] = arr[minIndex];
        arr[minIndex] = temp;
    
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }

}

 

/*5、在main方法中创建一维数组
 * String[] str = {"34", "43", "23", "45", "1", "67", "97", "53", "65"};,
 * 通过scanner输入一个数字判断该数字是否在于数组当中,
 * 如果存在则打印“该数字存在于该数组当中”,
 * 否则打印“您输入的数字不在该数组内
 */

java简单入门(3)一维数组

 

/*9、创建main()方法,完成以下要求;在main方法中创建一维数组
         * int [] arr = {3,99,21,10,14,55,6,2},通过scanner输入一个数字判断该数字是否在于数组当中,
         * 如果存在则打印“该数字存在于该数组当中”,否则打印“您输入的数字不在该数组内”
         */

 

java简单入门(3)一维数组

10、在main()方法中声明一个float类型的数组长度为5
 * 并且给数组元素赋值,输出数组当中的第二大值

java简单入门(3)一维数组

package 周考练习题;

public class D11 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
/*11、定义int类型数组{2,5,1,9,54,0,17,18,-20}要求输出数组中的最小的奇数
 * 

 */
        int[] arr = {2,5,1,9,54,0,17,18,-20};
        
        int minI =0;
        int count = 0;
        
        for (int i = 0; i < arr.length; i++) {
            if (arr[i]%2==1) {
                count++;
            }
        }
        
        int[] nj = new int[count];
        int xb = 0;
        for (int i = 0; i < arr.length; i++) {
            if (arr[i]%2==1) {
                arr[xb] = arr[i];
            }
        
        }
        
        for (int i = 0; i < nj.length; i++) {
            if (arr[minI]>arr[i]) {
                minI = i;
            }
        }
        System.out.println(arr[minI]);
    }

}
 

/*12、在main方法中定义数组int[] arr4 =     {18,30,98,55,16,90,24};
 * 将数组中的元素按照从小到大的顺序排列
 */

 

 

java简单入门(3)一维数组

 

package 周考练习题;

import java.util.Scanner;

public class D13 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
/*13、Scanner输入两个个数,并进行加减乘除的运算,
 * 将计算出来的四个结果放入int类型的数组中,
 * 求数组中偶数的个数
 */

        int[] arr = new int[4];
        
        
        for (int i = 0; i < arr.length; i++) {
            
        System.out.println("第"+(i+1)+"次运算");
        Scanner sc = new Scanner(System.in);
        System.out.println(".第一个数.");
        int a = sc.nextInt();
        System.out.println(".符号.");

        char st = sc.next().charAt(0);
        System.out.println(".第二个数.");
        
        int b =sc.nextInt();        
        switch(st){//关键值
        case ('+'):System.out.println("已存"+(a+b));arr[i] = (a+b);break;
        case ('-'):System.out.println("已存"+(a-b));arr[i] = (a-b);break;
        case ('*'):System.out.println("已存"+(a*b));arr[i] = (a*b);break;
        case ('/'):System.out.println("已存"+(a/b));arr[i] = (a/b);break;
        default :System.out.println("错误");
        }
    }
        int count =0;
        for (int i = 0; i < arr.length; i++) {
            if (arr[i]%2==0) {
                count++;
            }
        }
        System.out.println("个数"+count);
    }
}
 

package 周考练习题;

public class D14 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
/*14、在main()方法实例化一个long类型的数组,
 * 并且给数组的元素赋值, 求数组中大于200的偶数的个数和奇数的个数
 */

        long[] arr = new long[100];
        
        int num = 50;
        
        for (int i = 0; i < arr.length; i++) {
            num += 15;
            arr[i]=num;
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+",");
        }
        int countOU = 0;
        int countJI = 0;
        
        for (int i = 0; i < arr.length; i++) {
            if (arr[i]>=200 && arr[i]%2==0) {
                countOU++;
            }else{
                countJI++;
            }
        }
        System.out.println("偶数的个数"+countOU+"奇数的个数"+countJI);
    }

}
/*16、在main()方法中for循环控制台打印输出100以内3的倍数,
 * 如果数为33   66   99就略过不进行控制台打印输出
 */

        for (int i = 1; i <=100; i++) {
            
            if (i%3==0) {
                continue;
                
            }
            System.out.print(i+",");
        }
        
    }

package Arrayzuoye;

public class B11 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //10、新建TwelveTask类,数组的拷贝、定义int[] numArr = {1,12,4,11,22,3,123,90}; 
                //将numArr数组中的偶数 拷贝到新定义的数组中、并将新数组打印到控制台
        int[] numArr = {1,12,4,11,22,3,123,90};
        int count =0;
        for(int i=0;i<numArr.length;i++){
            if(numArr[i]%2==0){
                count++;
            }
        }
        int[] num = new int[count];
        int xb=0;
        for(int i=0;i<numArr.length;i++){
            if(numArr[i]%2==0){
                num[xb]=    numArr[i];
                xb++;
            }
        }

        for (int i = 0; i < num.length; i++) {
            System.out.println(num[i]);
        }
        
    }

}
 

char数组  ASCII标准码

java简单入门(3)一维数组