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]; ...
随机推荐
- kvc模式详解
java利用反射机制访问类的 私有变量.OC的KVC模式也是一样,用来访问私有变量用的. 用字符串去访问对象实例变量的机制. //KVC模式-(void)KVCtest{ [_dm valueForK ...
- 基于Haproxy+Keepalived构建高可用负载均衡集群
实验环境: 主机名 IP地址 VIP 192.168.200.254 Haproxy-1 192.168.200.101 Haproxy-2 192.168.200.102 Nginx1 192.16 ...
- java Http消息传递之POST和GET两种方法
/** * 通过Get方法来向服务器传值和获取信息, * 这里举例假设的前提是,链接上服务器,服务器直接发送数据给本地 * * 大体的思路: * 1.首先通过URL地址来获得链接的借口 * 通过接口, ...
- C#网络程序设计(3)网络传输编程之TCP编程
网络传输编程指基于各种网络协议进行编程,包括TCP编程,UDP编程,P2P编程.本节介绍TCP编程. (1)TCP简介: TCP是TCP/IP体系中最重要的传输层协议,它提供全双工和可 ...
- bzoj4652 [Noi2016]循环之美
Description 牛牛是一个热爱算法设计的高中生.在他设计的算法中,常常会使用带小数的数进行计算.牛牛认为,如果在k进制下,一个数的小数部分是纯循环的,那么它就是美的.现在,牛牛想知道:对于已知 ...
- DirectFB 之 通过多Window实现多元素处理
图像 设计 采用多window的方式实现显示,因为每个window可以独立的属性,比如刷新频率,也是我们最关注的 示例 /*************************************** ...
- Bash 的若干基本问题
Bash 的若干基本问题 这里介绍一些bash启动前.后的问题,以及一些使用bash需要注意的基本问题. 1.Bash的介绍 Bash是一种Shell程序,它是一般的Linux系统中的 ...
- IOS开发常见错误
. 问题表现:什么情况?方法居然无法拉线? 问题简述:ios的空间拉线到一个.h .m文件中 居然多次拖动无效.. 问题解决:ios的空间响应单单在代码中创建一个方法是没用的,这个时候通常跟空间是没有 ...
- python-day 练习1
#!/usr/bin/env python# -*- coding:utf-8 -*-'''需求: a. 元素分类 有如下值集合 v1 = [11,22,33,44,55,66,77,88,99,90 ...
- 使用Spire.Doc组件利用模板导出Word文档
以前一直是用Office的组件实现Word文档导出,但是让客户在服务器安装Office,涉及到版权:而且Office安装,包括权限配置也是比较麻烦. 现在流行使用第三方组件来实现对Office的操作, ...