• Java基础语法学习——练习项目


    1.需求:定义一个类,对数组中的数据进行管理。

    2.方法:

    1)插入数据(第一次最多允许插入9个,然后允许再指定位置插入一个):public int[] insertData(){}

    2)显示所有数据(插入数据前、插入数据后):public void showData(int[] a,int length){}

    3)在指定位置插入数据:public void insertAtArray(int[] a,int n,int k){}

    其中n表示要插入的数据,k表示插入位置的下标

    4)显示能被3整除的数据:public void divThree(int[] a){}

    5)显示提示信息的方法:public void notice();

    3.演示效果:

      要求如下:  

    • 使用switch结构完成主体功能,并调用方法完成演示效果中所示的功能。

    • 如果输入0-4以外的数字,应给出错误提示。

    package com.lijunlx;

    import java.util.Scanner;

    public class Demo {
        private static int[] arr=new int[10];//初始化数组
        
        //1--插入数据
        public int[] insertData(){
            Scanner n1 = new Scanner(System.in);
            for(int i=0;i<arr.length-1;i++){
                System.out.println("请输入第"+(i+1)+"个数据:");
                arr[i]=n1.nextInt();
            }
            for(int j=0;j<arr.length-1;j++){//显示定义的数组中9个元素
                System.out.print(arr[j]+" ");
            }
            System.out.println();
            return arr;    
        }
        
        //2--显示所有数据
        public void showData(){
            if(arr[9]==0){    //显示定义数组时输入的9个数据,此时第十个数默认为0
                for(int j=0;j<arr.length-1;j++){
                    System.out.print(arr[j]+" ");
                }
                System.out.println();
            }
            else{      //显示执行过在指定位置插入数据以后的所有元素
                for(int j:arr){
                    System.out.print(j+" ");
                }
                System.out.println();
            }
        }
        
        //3--在指定位置插入数据
        public void insertAtArray(int[] a,int n,int k){    
            for(int i=a.length-1;i>k-1;i--){
                a[i]=a[i-1];
            }
            a[k-1]=n;
            for(int j:a){
                System.out.print(j+" ");
            }
            System.out.println();
            
        }
        
        
        //4--显示能被3整除的数据
        public void divThree(int[] a){
            System.out.println("数组元素中能被3整除的元素为:");
            for(int i=0;i<a.length;i++){
                if(a[i]%3==0){
                    System.out.print(a[i]+" ");
                }
            }
        }
        
        //0--退出
        public void notice(){
            System.out.println("退出程序!");
        }
        
        //显示星号及具体数字对应的操作
        public void printXing(){
            System.out.println("****************************");
            System.out.println("      "+"1--插入数据");
            System.out.println("      "+"2--显示所有数据");
            System.out.println("      "+"3--在指定位置处插入数据");
            System.out.println("      "+"4--查询能被3整除的数据");
            System.out.println("      "+"0--退出");
            System.out.println("****************************");
            System.out.println("请输入对应的数字进行操作:");
        }

    //switch....case....
        public static void main(String[] args) {
            Demo pr = new Demo();  //定义对象
            pr.printXing();
            Scanner n = new Scanner(System.in);
            int tab = n.nextInt();
            boolean isExit=true;
            while(isExit){
                switch (tab) {       
                case 1:            //1--插入数据
                    pr.insertData();
                    pr.printXing();
                    tab = n.nextInt();
                    break;
                case 2:                //2--显示所有数据
                    pr.showData();
                    pr.printXing();
                    tab = n.nextInt();
                    break;
                case 3:                //3--在指定位置处插入数据
                    System.out.println("请输入要插入的数据:");
                    int n1 = n.nextInt(); // 插入的数据
                    System.out.println("请输入要插入的数据的位置:");
                    int k = n.nextInt();// 插入数据的位置
                    pr.insertAtArray(arr, n1, k);
                    pr.printXing();
                    tab = n.nextInt();
                    break;
                case 4:                //4--查询能被3整除的数据
                    pr.divThree(arr);
                    pr.printXing();
                    tab = n.nextInt();
                    break;
                case 0:                //0--退出
                    pr.notice();
                    isExit=false;
                    break;
                default:            //非0-4的整数
                    System.out.println("输入错误,请输入0-4的整数:");
                    tab = n.nextInt();
                }
                
            }
            
        }

    }

    //第二种用if...else...主方法....

    public static void main(String[] args) {
            Demo pr = new Demo();  //定义对象
            pr.printXing();
            Scanner n = new Scanner(System.in);
            int tab = n.nextInt();
            boolean isExit=true;
            while(isExit){
                if(tab==1){
                    pr.insertData();
                }else if(tab==2){
                    pr.showData();
                }else if(tab==3){
                    System.out.println("请输入要插入的数据:");
                    int n1 = n.nextInt(); // 插入的数据
                    System.out.println("请输入要插入的数据的位置:");
                    int k = n.nextInt();// 插入数据的位置
                    pr.insertAtArray(arr, n1, k);
                }else if(tab==4){
                    pr.divThree(arr);
                }
                if(tab==0){
                    pr.notice();
                    isExit=false;
                }else{
                    pr.printXing();
                    tab = n.nextInt();
                }
                
            }

  • 相关阅读:
    字典操作
    集合操作
    字符编码与转码
    基于Vue的WebApp项目开发(二)
    算法之递归
    webpack学习(一)
    基于Vue的WebApp项目开发(一)
    webpack踩坑之旅
    vue2.0中的watch和计算属性computed
    vue2.0路由写法、传参和嵌套
  • 原文地址:https://www.cnblogs.com/lilijun/p/7299262.html
Copyright © 2020-2023  润新知