javaSE_06Java中的数组(array)-提高练习
1.求1!+2!+3!+···+30!的和,定义一个方法
public class Test1{
public static void main(String[] args){
//1.求1!+2!+3!+···+30!的和,定义一个方法
long sum=0;
for(int i=1;i<=30;i++){
sum+=getJieCheng(i);
}
System.out.println("sum="+sum);
}
public static int getJieCheng(int a){
int jieCheng=1;
for(int i=1;i<=a;i++){
jieCheng*=i;
}
return jieCheng;
}
}
2.定义一个整型数组,求数组中奇数的个数和偶数的个数
public class Test2{
public static void main(String[] args){
//2.定义一个整型数组,求数组中奇数的个数和偶数的个数
int[] arr={1,3,5,6,2,56,5};
//偶数的个数
int count=0;
for(int i=0;i<arr.length;i++){
if(arr[i]%2==0){
count++;
}
}
System.out.println("Evencount="+count);
System.out.println("Oddcount="+(arr.length-count));
}
}
3.oddArr={1,3,5,0,0,6,6,0,5,4,7,0,5}要求将数组中为0的项去掉,将不为0的项存入一个新数组
public class Test3{
public static void main(String[] args){
//3.oddArr={1,3,5,0,0,6,6,0,5,4,7,0,5}
//要求将数组中为0的项去掉,将不为0的项存入一个新数组
int[] oddArr={1,3,5,0,0,6,6,0,5,4,7,0,5};
//计算数组中0的个数,为新数组做准备
int count=0;
for(int i=0;i<oddArr.length;i++){
if(oddArr[i]==0){
count++;
}
}
//创建新数组
int count1=0;
int[] newArr=new int[oddArr.length-count];
for(int i=0;i<oddArr.length;i++){
if(oddArr[i]!=0){
count1++;
newArr[count1-1]=oddArr[i];
}
}
for(int m:newArr){
System.out.print(m+" ");
}
}
}
4.有30个0~9之间的数字,统计0~9中每个数字出现的次数
import java.util.Arrays;
public class Test4{
public static void main(String[] args){
//有30个0~9之间的数字,统计0~9中每个数字出现的次数
//int random=(int)(Math.random()*10);
int[] arr=new int[30];
//给数组赋值
for(int i=0;i<arr.length;i++){
arr[i]=(int)(Math.random()*10);
}
//统计每个数的出现的次数
int[] count=new int[10];
for(int i=0;i<count.length;i++){
for(int j=0;j<arr.length;j++){
if(arr[j]==i){
count[i]++;
}
}
}
System.out.println("原数组中的值:"+Arrays.toString(arr));
System.out.println("从0~9每个数字出现的次数:"+Arrays.toString(count));
}
}
5.在排序好的数组中添加一个数字,将数字放在一个合适的位置
import java.util.Arrays;
public class Test5{
public static void main(String[] args){
//5.在排序好的数组中添加一个数字,将数字放在一个合适的位置
int[] arr=new int[20];
//给数组添加数字
for(int i=0;i<arr.length;i++){
arr[i]=(int)(Math.random()*30)+1;
}
System.out.println("原数组:"+Arrays.toString(arr));
//给数组排序
//选择排序
for(int i=0;i<arr.length-1;i++){
int index=i;
for(int j=i+1;j<arr.length-1;j++){
if(arr[index]>arr[j]){
index=j;
}
}
//实现交换
int temp=arr[i];
arr[i]=arr[index];
arr[index]=temp;
}
System.out.println("排好序的数组:"+Arrays.toString(arr));
//定义一个放入的数字
int a=5;
//先获取数字应该放入的位置
int count=0;
for(int i=0;i<arr.length;i++){
if(arr[i]<a){
count++;
}
}
//将新的数字放到数组中
int[] newArr=new int[21];
for(int i=0;i<newArr.length;i++){
if(i<=count){
newArr[i]=arr[i];
}else if(i==count+1){
newArr[i]=a;
}else{
newArr[i]=arr[i-1];
}
}
System.out.println("插入数字后的新数组:"+Arrays.toString(newArr));
}
}
javaSE_06Java中的数组(array)-提高练习的更多相关文章
- C++中的数组array和vector,lambda表达式,C字符串加操作,C++中新类型数组(数组缓存),多元数组,new缓冲
使用C++风格的数组.不须要管理内存. array要注意不要溢出,由于它是栈上开辟内存. array适用于不论什么类型 #include<iostream> #include< ...
- javaSE_06Java中的数组(array)-练习
(1),数组的两种遍历方式,顺序查找,二分查找,求最大最小数,冒泡排序,选择排序. public class Test1{ public static void main(String[] args) ...
- javaSE_06Java中的数组(array)
1.什么是数组? 顾名思义,即为数据的组合或集合,数组就是用来表示一组数据的. 比如没有数组之前,我们要存储多个姓名的信息 String name1; String name2; String nam ...
- javaSE_06Java中的数组(array)-思维导图
思维导图看不清楚时: 1)可以将图片另存为图片,保存在本地来查看 : 2)右击在新标签中打开放大查看 (IE不支持,搜狗,360可以):
- js中的数组Array定义与sort方法使用示例
Array的定义及sort方法使用示例 Array数组相当于java中的ArrayList 定义方法: 1:使用new Array(5 )创建数组 var ary = new Array(5): ...
- JS中有关数组Array的常用方法函数
Array对象的方法主要有如下几种(我所知道的): concat()连接两个或多个数组,并返回结果,但是值得注意的是该方法并不改变数组本身,而仅仅返回一个数组连接的副本. push()在数组后面添加一 ...
- JavaScript中的数组Array
抄自:https://www.jianshu.com/p/7e160067a06c js中数组的方法种类众多,有ES5之前版本中存在的,ES5新增,ES6新增等:并且数组的方法还有原型方法和从obje ...
- PIL中的Image和numpy中的数组array相互转换
1. PIL image转换成array img = np.asarray(image) 需要注意的是,如果出现read-only错误,并不是转换的错误,一般是你读取的图片的时候,默认选择的是&quo ...
- JavaScript中的数组Array方法
push(),pop()方法 push(),pop()方法也叫栈方法,push()可以理解成,向末尾推入,而pop()恰好相反,可以理解成从末尾移除(取得). var nums=[1,2,3,4]; ...
随机推荐
- 概率检索模型及BM25
概率排序原理 以往的向量空间模型是将query和文档使用向量表示然后计算其内容相似性来进行相关性估计的,而概率检索模型是一种直接对用户需求进行相关性的建模方法,一个query进来,将所有的文档分为两类 ...
- TCP/IP笔记(七)TCP详解
TCP的特点及其目的 为了通过数据包实现可靠性传输,需要考虑很多事情,例如数据的破坏.丢包.重复记忆分片顺序混乱等问题.如不能解决这些问题,也就无从谈起可靠传输. TCP通过检验和.序列号.确认应答. ...
- angular directive
1.restrict (字符串)可选参数,指明指令在DOM里面以什么形式被声明: 取值有:E(元素),A(属性),C(类),M(注释),其中默认值为A: E(元素):<directiveName ...
- Latex 公式在线可视化编辑器
寻觅 最近的一个demo需要用到Latex公式在线编辑器,从搜索引擎一般会得到类似http://latex.codecogs.com/eqneditor/editor.php的结果,这个编辑器的问题在 ...
- Java设计模式:代理模式(二)
承接上文 三.计数代理 计数代理的应用场景是:当客户程序需要在调用服务提供者对象的方法之前或之后执行日志或者计数等额外功能时,就可以用到技术代理模式.计数代理模式并不是把额外操作的代码直接添加到原服务 ...
- MAC Mysql 重置密码
使用mac电脑,当mysql登录密码忘记时,需要重置密码.步骤如下: 1. 关闭当前正在运行的mysql进程. A.进入"偏好设置",选择mysql, 再选"stop m ...
- js函数中this的指向
本文是我个人对this指向的一些理解,如有不足之处,还望大家可以批评指正,在此先谢过了! 首先,我们来回顾一下ES5里函数的几种调用方式: 1⃣️直接调用 foo(); 2⃣️方法调用 obj.foo ...
- 作死上CODEVS,青铜题
题面:输入一列整数,输出它们的总和.最大值.最小值.并从大到小输出. 先上一波伪代码,认真地做一波数组排序题. #include<stdio.h> #include<math.h&g ...
- PHP 安装 phpredis 扩展(二)
本文主要介绍为 PHP 安装 phpredis 扩展,并用 PHP 代码连接 Redis 服务器. 一.安装 phpredis 扩展 1. Linux.macOS 下安装 #. 下载.解压.安装.编译 ...
- 蓝桥杯-打印十字图-java
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...