JAVA中的数组是比较常见的。以下列出一些经典的题型。
1、求1!+2!+。。。。。+20!的和
public class jiechenhe { public static void main(String arg[]){ double sum=1; double max=0; for(double i=1;i<=20;i++){ sum*=i; //每一项循环乘积 max+=sum; //乘完以后各项相加。 } System.out.println("the number is:"+ max); } }
2、经典的冒泡排序方法。
public class paixu { public static void main(String[] args){ int a[]={32,32,45,252,35234,42365,34,54,}; for(int i=1;i<a.length;i++) { for (int j=0;j<a.length;j++) //冒泡排序的核心思想,就是选取中介来交换值。 { if(a[i]<a[j]) { int k=a[i]; a[i]=a[j]; a[j]=k; } } } System.out.print("the result is: "); for(int i=0;i<a.length;i++) { System.out.print(a[i]+" "); } } }
3、字母金字塔。在键盘输入一个字母按照由小到大来输出.
public class xinhao { public static void main(String args[]) { char l[]=args[0].toCharArray(); //比如输入的是C则会输出 A char i=l[0]; ABA int k=((int)i-(int)'A'+1); ABCBA for (int b=0;b<=k;b++) //行数的循环 { for(int a=1;a<=k-b;a++){ //前半段的循环 System.out.print(" ");} for(int c=1;c<=2*b-1;c++){ //后半段的循环 char o='A'; System.out.print(o); } System.out.println(); } } }
4、去掉数组中的某些字段。
public class demo6 { public static void main(String[] args){ int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5}; int newArr[]=new int[20]; System.out.print("结果是:"); for(int i=0,j=0;i<oldArr.length;i++) { if(oldArr[i]!=0) //判断数组中的值是否为0; { newArr[j]=oldArr[i]; //写进新的数组当中去。 j++; } } for(int j=0;j<newArr.length;j++) { if(newArr[j]!=0){ System.out.print(newArr[j]+" ");} //打印新的数组。 } } }
5、字符串匹配。
class getnumber { private String string; public getnumber(String string){ this.setstring(string); } public String getstring(){ return string; } public void setstring(String s){ string=s; } public void number(){ int n=0; int o=0; char a[]=string.toCharArray(); //把字符串转换为字符数组。 for(int i=0;i<a.length;i++) { if(a[i]=='n') { n++; } if(a[i]=='o') //分别统计对象中的n,o的值得个数 { o++; } } System.out.println("the n number is:"+n+"\n"+"the o number is:"+o); } } public class demo5_3 { public static void main(String[] args){ getnumber get=new getnumber("want you to know one thing"); get.number(); } }
6、在排序好的数组中添加一个数字,并将其插入合适的位置。
public class demo12 { public static void main(String[] args) { int a[]={23,43,235,78,23,45,45}; int b[]=new int[23]; System.out.print("插入前的数组为:"); java.util.Arrays.sort(a); for(int i=0;i<a.length;i++) { System.out.print(a[i]+" "); } int k=100; System.out.print("插入后的数组为:"); for(int i=0;i<a.length;i++) { b[i]=a[i]; } //把A数组的值放入B中 b[b.length-1]=k; java.util.Arrays.sort(b); //对b重新进行排序。 for(int j=0;j<b.length;j++) { System.out.print(b[j]+" "); } } }