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:用于产生随机数 * * 使用步骤: * ...
随机推荐
- jmeter 实现登录参数化
业务场景 在测试过程中,一般需要模拟不同的用户登录,这样压测的数据比较平均,也能更好的模拟真实的压力情况. 如果使用同一个用户账号进行测试,那么比如在查询代办的时候,此人的待办太多,也不符合实际的情况 ...
- linux cgroups简介(下)Cgroups 与 Systemd
Cgroups 是 linux 内核提供的一种机制,如果你还不了解 cgroups,请参考前文<Linux cgroups 简介>先了解 cgroups.当 Linux 的 init 系统 ...
- Kubernetes YAML 文件全字段详解
Kubernetes YAML 文件全字段详解 Deployment yaml 其中主要参数都在podTemplate 中,DaemonSet StatefulSet 中的pod部分一样. apiVe ...
- C语言scanf函数转换说明表及其修饰符表
1. 对于上一篇文章,总结printf()输出,C库也包含了多个输入函数, scanf()是最常用的一个,也是经常与printf()经常一起搭配使用的函数之一. scanf()和printf()类似, ...
- httprunner学习19-重复执行用例
前言 使用httprunner做接口测试过程中,在工作中会遇到这种场景,发现某个接口不稳定,想重复运行100次用例,甚至1000次,看成功率. yml脚本 - config: name: httpbi ...
- Beta冲刺(4/7)——2019.5.25
所属课程 软件工程1916|W(福州大学) 作业要求 Beta冲刺(4/7)--2019.5.25 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪万里 ...
- Flutter 数据存储之 shared_preferences
资源名称 网址 github https://github.com/flutter/plugins/tree/master/packages/shared_preferences Flutter 数据 ...
- BZOJ - 3242 :快餐店 (基环树DP) 最小化半径
题意:给定N点N边的无向连通图,现在让你在图中找一点作为餐厅,使得最远点距离这点最近. 思路:为了保留整数,我们求最小直径,最后去除2. 直径来源于两部分: 1,在外向树中: 那么就是树的直接,一棵 ...
- reactNative 获取组件高、宽、位置等信息
import {findNodeHandle, UIManager} from 'react-native' layout(ref) { const handle = findNodeHandle(r ...
- tomcat catalina
脚本catalina用于启动和关闭tomcat服务器,是最关键的脚本 在tomcat里有此文件 写这个脚本的人为什么命名为catalina一开始我还以为是其初恋女友,后来才知道原来是一个小岛的名字.