java数组,Java 数组

1 , Java 数组int a[]=new int[5];相当于 int a[] = System.out.println(a[4]); 数组的下标从0开始a[4] 就是第5个元素输出第5个整数的值输出数组中最后一个元素【java数组,Java 数组】
2 , java数组定义String[] keywords;声明数组;String[] keywords = new String[10];创建数组 。光声明自然无法使用在Java中,String是对象,其创建是要用new语句的,否则是没有创建的 。对象放在数组里面存储,这就是对象数组 。数组是一种顺序存储空间,java的数组既可以存放基本数据类型 , 也可以存放对象 。
3,Java中数组的定义与使用方法Java中数组的定义与使用方法:1、数组的定义语法有两种:type arrayName[];type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量 。例如:int demoArray[];int[] demoArray;这两种形式没有区别 , 使用效果完全一样,读者可根据自己的编程习惯选择 。注意:Java在定义数组时并不为数组元素分配内存,因此[ ]中无需指定数组元素的个数,即数组长度 。而且对于如上定义的一个数组是不能访问它的任何元素的,开发者必须要为它分配内存空间,这时要用到运算符new,其格式如下:arrayName=new type[arraySize];其中,arraySize 为数组的长度,type 为数组的类型 。如:demoArray=new int[3];//为一个整型数组分配3个int 型整数所占据的内存空间 。2、数组的初始化可以在声明数组的同时进行初始化(静态初始化),也可以在声明以后进行初始化(动态初始化) 。例如:// 静态初始化// 静态初始化的同时就为数组元素分配空间并赋值int intArray[] = String stringArray[] = // 动态初始化float floatArray[] = new float[3];floatArray[0] = 1.0f;floatArray[1] = 132.63f;floatArray[2] = 100F;3、数组的使用:每个数组都有一个length属性来指明它的长度,例如 intArray.length 指明数组 intArray 的长度 。【示例】写一段代码,要求输入任意5个整数,输出它们的和 。import java.util.*;public class Demopublic static void main(String[] args)int intArray[] = new int[5];long total = 0;int len = intArray.length;// 给数组元素赋值System.out.print("请输入" + len + "个整数,以空格为分隔:");Scanner sc = new Scanner(System.in);for(int i=0; i<len; i++)intArray[i] = sc.nextInt();}// 计算数组元素的和for(int i=0; i<len; i++)total += intArray[i];}System.out.println("所有数组元素的和为:" + total);}}运行结果:请输入5个整数,以空格为分隔:10 20 15 25 50所有数组元素的和为:120
4,Java数组package com.ambow.action;public class Java3 { public static void main(String[] args) {int i, j, sum1 = 0, sum2 = 0;int b[][] = { { 2, 4, 6, 8, 10 }, { 1, 3, 5, 7, 9 },{ 1, 4, 9, 16, 25 }, { 2, 3, 5, 7, 11 }, { 0, 2, 4, 8, 16 } };for (i = 0; i < b.length; i++) {System.out.print("第" + (i + 1) + "行的所有元素:");for (j = 0; j < b[i].length; j++) {if(i==j){sum1 += b[i][i];}else if(i!=j&&(i+j==4))//如果中间的数想在加一次;i!=j可以去掉sum2 += b[i][j];System.out.print(b[i][j] + "\t");}System.out.println();}System.out.println("二维数组正对角线的和sum1=" + sum1);System.out.println("二维数组反对角线的和sum2=" + sum2); }}应不会错的了;额,a[0][0] -- a[4][4]在循环里判断一下,数组下标相等时相加if(i==j){sum1+=b[i][j];}另一条if((i+j)==4){sum2 =+ b[i][j];}sum1,sum2的初始值是0public class Java3 {public static void main(String[] args) {int i,j,sum1=0,sum2=0;int b[][]={{2,4,6,8,10},{1,3,5,7,9},{1,4,9,16,25},{2,3,5,7,11},{0,2,4,8,16}};for(i=0;i** * @(#)PostPoneClass.java * * * @author* @version 1.00 2008/6/13 */public class PostPoneClass {public static int ARRAYLENGTH = 10;public static int POSTPONENUM = 3;/*** Creates a new instance of PostPoneClass.*/public PostPoneClass() {}/*** @param args the command line arguments*/public static void main(String[] args) {// TODO code application logic hereint iArr[] = new int[ARRAYLENGTH];for(int i = 0; i < ARRAYLENGTH; i ++){iArr[i] = i + 1;}System.out.println("Before Postpone the array:");for(int i = 0; i < ARRAYLENGTH; i ++){System.out.println("iArr[" + i + "] = " + iArr[i]);}for(int i = 0; i < POSTPONENUM; i ++){int iTemp = iArr[i];iArr[i] = iArr[ARRAYLENGTH - POSTPONENUM + i];iArr[ARRAYLENGTH - POSTPONENUM + i] = iTemp;}System.out.println("After Postpone the array:");for(int i = 0; i < ARRAYLENGTH; i ++){System.out.println("iArr[" + i + "] = " + iArr[i]);}}} 5,java数组的相关操作刚学java?。渴橹涝趺从镁托欣玻?我觉得实际工作中用的频率不是很高,public static void main(String[] args) // 如果不一定要用数组的话 , 我建议用List代替数组操作,// 因为List最后可以转成数组,而且操作灵活 // 先初始化一个5个长度的数组 Object[] arr = new Object[]List list = new ArrayList(); String out = ""; // 装进list里面,用list操作完,转成数组,就是找简单的方式去操作 。for(int i = 0; i < arr.length; i++)list.add(arr[i]); } // 添加操作 list.add(100); arr = list.toArray(); for(int i = 0; i < arr.length; i++)out += list.get(i) + (i == arr.length - 1 ? "" : ","); } System.out.println("添加一个100:" + out); // 删除操作,移除索引为1的对象,即把3删除 list.remove(1); arr = list.toArray(); out = ""; for(int i = 0; i < arr.length; i++)out += list.get(i) + (i == arr.length - 1 ? "" : ","); } System.out.println("删除第二个3:" + out); // 正序排列 Collections.sort(list); arr = list.toArray(); out = ""; for(int i = 0; i < arr.length; i++)out += list.get(i) + (i == arr.length - 1 ? "" : ","); } System.out.println("正序排列:" + out); // 倒序排列 Collections.reverse(list); out = ""; for(int i = 0; i < arr.length; i++)out += list.get(i) + (i == arr.length - 1 ? "" : ","); } System.out.println("倒序排列:" + out);}使用你的数组长度来实例化next类对象 , 例如:next nt = new next(a.length);调用nt.next()方法返回一个下标,再次调用nt.next()方法返回的下标不会与以前返回的下标相同 。这个next类是我特意为你的问题而写的!import java.util.random;public class testpublic static void main(string[] args)next nt = new next(10);for(int i = 0; i < 10; i++)system.out.print(nt.next() + " ");}system.out.println(); }}class nextprivate int[] values; private int scope; private random r = new random(); public next(int size)values = new int[size];for(int i = 0; i < size; i++)values[i] = i;}scope = values.length; } public int next()int n = r.nextint(scope);int value = http://www.lisdn.com/gkrj/shwd/values[n];int t = values[n];values[n] = values[scope-1];values[scope-1] = t;scope--;return value; } public void reset()scope = values.length; }}1.在Java 中所有的数组都在一个缺省的属性Length,用于获取数组中元素的个数.2.数组的复制System.arraycopy()3.数组的排序Arrays.sort()4.在已排序的数组中查找某个元素Arays.binarySearch()*/import java.util.Arrays; //对数组排序时要导入此包.class ArrayTestpublic static void main(String[] args)/*int[] num1=new int []int [] num2=new int [3];System.arraycopy(num1,0,num2,0,num1.length);for(int i=0;i

    推荐阅读