Java数组移位和统计
package com.imooc.method; import java.util.InputMismatchException;
import java.util.Scanner; public class DataManage {
public int[] insertData(){
int[] a=new int[];
Scanner sc=new Scanner(System.in);
//少接收一个数据,为在指定位置处插入数据做准备;
for(int i=;i<a.length-;i++ ) {
System.out.println("请输入第"+(i+)+"个数据");
try {
a[i]=sc.nextInt();
}catch(InputMismatchException e){
System.out.println("输入的数据格式有误,不能有非数字");
sc.next();
i--;
}
}
return a;
}
/*
* 显示数组中元素的内容
* a:数组:
* length :要显示的数组元素的个数:
* */
public void showData(int[] a,int length) {
for(int i=;i<length;i++) {
System.out.print(a[i]+" ");
}
System.out.println();
}
/*从键盘接收一个数据,插入到数组的指定位置处:
*
* */
public void insertAtArray(int[] a,int n,int k) {
for(int i=a.length-;i>k;i--) {
a[i]=a[i-];
}
a[k]=n;
}
//获取能被3整除的元素:
public void divThree(int[] a) {
String str="";
int count=;
for(int n:a) {
if(n%==) {
str=str+n+" ";
count++;
}
}
if(count==) {
System.out.println("数组中没有能被3整除的元素");
}else {
System.out.println("数组中能被3整除的元素:"+str);
}
}
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("*********************************");
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
DataManage dm=new DataManage();
// dm.notice();
Scanner sc=new Scanner(System.in);
int input=;
int[] a=null;
int n=,k=;//n表示要插入的数据,k是位置:
while(true) {
dm.notice();
System.out.println("请输入对应的数字进行操作");
try {
input=sc.nextInt();
}catch (InputMismatchException e) {
// TODO: handle exception
System.out.println("输入的数据格式有误,不能有非数字");
sc.next();
continue;
}
if(input==) {
System.out.println("退出程序!");
break;
}
switch(input) {
case :
//插入数据:
a=dm.insertData();
//显示数据:
System.out.println("数组元素为");
dm.showData(a, a.length-);
break;
case :
if(a!=null) {
System.out.println("数组元素为:");
if(a[a.length-]==) {
dm.showData(a,a.length-);
}
}else {
System.out.println("还未在数组中插入数据,请重新选择操作");
}
break;
case :
//在指定位置处插入数据:
if(a!=null) {
System.out.println("请输入要插入的数据:");
try {
n=sc.nextInt();
System.out.println("请输入要插入的数据的位置");
k=sc.nextInt();
}catch (InputMismatchException e) {
// TODO: handle exception
System.out.println("输入的数据格式有误,不能有非数字");
sc.next();
break;
}
dm.insertAtArray(a, n, k);
dm.showData(a, a.length);
}else {
System.out.println("还未在数据中插入数据,请重新插入数据");
}
break;
case :
if(a!=null) {
dm.divThree(a);
}else {
System.out.println("还未在数字中插入数据,请重新选择操作");
}
break;
}
}
} }
Java数组移位和统计的更多相关文章
- 075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现
075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现 本文知识点:综合案例-数组移位-主方法功能4的实现 说明:因为 ...
- 074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现
074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现 本文知识点:综合案例-数组移位-主方法功能3的实现 说明:因为 ...
- 073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现
073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现 本文知识点:综合案例-数组移位-主方法功能1和2的实现 说 ...
- 072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法
072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法 本文知识点:综合案例-数组移位-在指定位置处插入数据方法 ...
- 071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法
071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法 本文知识点:综合案例-数组移位-显示数组当中所有元素 ...
- 070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据
070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据 本文知识点:综合案例-数组移位-从键盘接收数据 说明:因为时间紧张 ...
- 069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求
069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求 本文知识点:综合案例-数组移位-案例需求 说明:因为时间紧张,本人写博客 ...
- [转载]Java数组扩容算法及Java对它的应用
原文链接:http://www.cnblogs.com/gw811/archive/2012/10/07/2714252.html Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组 ...
- Java基础学习-Random类和Java数组
1.随机数类(Random) package com.denniscui; import java.util.Random; /* * Random:用于产生随机数 * * 使用步骤: * ...
随机推荐
- rds - mysql修改存储过程/函数的方式
rds 不支持账户A 给账户B 创建授权存储过程,只能是当前登录账户给自己创建,要登陆对应账户删除原有存储过程重新创建即为修改. 例子如下: 先登陆新账号然后执行如下sql语句即可: DROP PRO ...
- 接口自动化--unittest
今天我介绍一个测试框架:不管我们是做接口自动化还是UI自动化,我们都要用的一个框架---unittest unittest是python里面的一个单元测试框架,我们做自动化测试的话,都是要用到这个测试 ...
- 第五次个人作业- Alpha项目测试
这个作业属于哪个课程 课程链接 这个作业要求在哪里 作业要求链接 团队名称 西柚排课王 测试人姓名 刘洋 测试人学号 201731062314 一.测试项目 测试项目 团队名 第二次Alpha发布博客 ...
- Linux 修改时区(PDT修改为CST)
方法1: Linux 修改时区 本文链接:https://blog.csdn.net/Aritem/article/details/79213306 命令:tzselect 按照顺序依次输入5,9,1 ...
- PyCharm专业版激活(2018年Windows版)
友情提示: 本教程仅供学习交流使用,如需商业用途,强烈建议使用官方正式版.(官网正式链接为:https://www.jetbrains.com/pycharm/) 当然网上有很多其他激活教程,我看到的 ...
- Android PKMS服务
它的作用? 关于PKMS的全称是啥应该咱们不陌生,PackageManagerService,和AMS一样是Android系统的核心服务,它主要负责系统中Package的管理,应用程序的安装.卸载.信 ...
- JSR303/JSR-349,hibernate validation,spring validation 之间的关系
JSR303是一项标准,JSR-349是其的升级版本,添加了一些新特性,他们规定一些校验规范即校验注解,如@Null,@NotNull,@Pattern,他们位于javax.validation.co ...
- Mysql的安装与环境的配置
Mysql的安装与环境的配置 这里以Mysql5.5为例: (1)双击安装包,点击next (2)选择自定义,点击Next (3)修改路径,点击Next (4)选择精确配置,点击Next (5)选择开 ...
- Ruby break, next, redo, retry
# -*- coding: UTF-8 -*- # E3.10-5.rb 演示break, next, redo, retry puts "演示break" c='a' for i ...
- go mod 使用
go modules 是 golang 1.11 新加的特性.现在1.12 已经发布了,是时候用起来了.Modules官方定义为: 模块是相关Go包的集合.modules是源代码交换和版本控制的单元. ...