感觉写的有点繁琐,显示的方法和插入方法有点怪,回头再看看那个数组传值,没怎么看懂 应该还可以改善很多
package day14;
import java.util.Scanner;
public class Demo {
static Scanner scan = new Scanner(System.in);
static int[] arr = new int[10];
//显示提示信息
public void notice(){
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("请输入对应的数字进行操作:");
}
//插入数据
public int[] insertData(){
for(int i=0;i<arr.length-1;i++){
System.out.println("请输入第"+(i+1)+"个数据:");
arr[i] = scan.nextInt();
if(arr[i]==0){
System.out.println("数组元素不能为0,请重新输入!");
i--;
}
}
System.out.println("数组元素为:");
for(int i=0;i<arr.length-1;i++){
System.out.print(arr[i]+" ");
}
System.out.println();
return arr;
}
//显示所有数据
public void showData(int[] a,int length){
System.out.println("数组元素为:");
if(a[a.length-1]==0){
for(int i=0;i<a.length-1;i++){
System.out.print(a[i]+" ");
}
}else{
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
}
System.out.println();
}
//在指定位置处插入数据
public void insertAtArray(int[] a,int n, int k){
a[k] = n;
for(int i:a){
System.out.print(i+" ");
}
System.out.println();
}
//查询能被3整除的数据
public void divThree(int[] a){
int count = 0;//记录能被3整除的元素个数
for(int i=0;i<a.length;i++){
if(a[i]%3==0){
count++;
}
}
if(count==0){
System.out.println("数组中没有能被3整除的元素");
}else{
System.out.println("数组中能被3整除的元素为:");
for(int i:a){
if(i%3==0){
System.out.print(i+" ");
}
}
}
System.out.println();
}
public static void main(String[] args) {
Demo demo = new Demo();
int num;
do {
demo.notice();
num = scan.nextInt();
switch (num) {
case 1:
arr = demo.insertData();
break;
case 2:
demo.showData(arr,arr.length);
break;
case 3:
System.out.println("请输入要插入的数据:");
int n = scan.nextInt();
int k;
boolean flag = false;
do{
System.out.println("请输入要插入的位置:");
k = scan.nextInt();
if(k>=arr.length||k<0){
System.out.println("不符合数组长度,请重新输入!");
}else{
flag = true;
}
}while(flag==false);
demo.insertAtArray(arr,n,k);
break;
case 4:
demo.divThree(arr);
break;
default:
if(num!=0){
System.out.println("请按提示输入正确数字!");
}
}
} while (num!=0);
System.out.println("退出程序!");
}
}
源自:Java方法
8-1 综合案例需求
33
收起
正在回答 回答被采纳积分+1
1回答
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7235 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星