java初学者问题 有一个整数数组int[] a = {1, 2, 3, 4, 5, ……, 98, 99, 100} java中, int a[] = {1,2,4,5};是直接...

Java\u4e2d\u4e00\u7ef4\u6570\u7ec4\u5b9a\u4e49\u53ca\u521d\u59cb\u5316 int []a; a[]={1,2,3}; \u662f\u9519\u7684\uff0c\u4e3a\u4ec0\u4e48

\u5982\u679c\u4f60\u719f\u6089C/C++\uff0cJava\u6570\u7ec4\u7684\u5de5\u4f5c\u539f\u7406\u4e0e\u5b83\u4eec\u4e0d\u540c\u3002Java\u4e2d\u7684\u6570\u7ec4\u662f\u5bf9\u8c61\uff0c\u8fd9\u5c31\u610f\u5473\u7740\u4e0eC++\u4e2d\u7684\u6570\u7ec4\u7684\u6839\u672c\u4e0d\u540c.
1\u3001\u6570\u7ec4\u4e0d\u662f\u96c6\u5408\uff0c\u5b83\u53ea\u80fd\u4fdd\u5b58\u540c\u79cd\u7c7b\u578b\u7684\u591a\u4e2a\u539f\u59cb\u7c7b\u578b\u6216\u8005\u5bf9\u8c61\u7684\u5f15\u7528\u3002\u6570\u7ec4\u4fdd\u5b58\u7684\u4ec5\u4ec5\u662f\u5bf9\u8c61\u7684\u5f15\u7528\uff0c\u800c\u4e0d\u662f\u5bf9\u8c61\u672c\u8eab\u3002\u6570\u7ec4\u58f0\u660e\u7684\u4e24\u79cd\u5f62\u5f0f\uff1a\u4e00\u3001int[] arr; \u4e8c\u3001int arr[]; \u63a8\u8350\u4f7f\u7528\u524d\u8005\uff0c\u8fd9\u662f\u4e00\u4e2aint\u6570\u7ec4\u5bf9\u8c61\uff0c\u800c\u4e0d\u662f\u4e00\u4e2aint\u539f\u59cb\u7c7b\u578b\u3002
2\u3001\u6570\u7ec4\u672c\u8eab\u5c31\u662f\u5bf9\u8c61\uff0cJava\u4e2d\u5bf9\u8c61\u662f\u5728\u5806\u4e2d\u7684\uff0c\u56e0\u6b64\u6570\u7ec4\u65e0\u8bba\u4fdd\u5b58\u539f\u59cb\u7c7b\u578b\u8fd8\u662f\u5176\u4ed6\u5bf9\u8c61\u7c7b\u578b\uff0c\u6570\u7ec4\u5bf9\u8c61\u672c\u8eab\u662f\u5728\u5806\u4e2d\u7684\u3002
4\u3001\u5728\u6570\u7ec4\u58f0\u660e\u4e2d\u5305\u542b\u6570\u7ec4\u957f\u5ea6\u6c38\u8fdc\u662f\u4e0d\u5408\u6cd5\u7684\uff01\u5982\uff1aint[5] arr; \u3002\u56e0\u4e3a\uff0c\u58f0\u660e\u7684\u65f6\u5019\u5e76\u6ca1\u6709\u5b9e\u4f8b\u5316\u4efb\u4f55\u5bf9\u8c61\uff0c\u53ea\u6709\u5728\u5b9e\u4f8b\u5316\u6570\u7ec4\u5bf9\u8c61\u65f6\uff0cJVM\u624d\u5206\u914d\u7a7a\u95f4\uff0c\u8fd9\u65f6\u624d\u4e0e\u957f\u5ea6\u6709\u5173\u3002
5\u3001\u5728\u6570\u7ec4\u6784\u9020\u7684\u65f6\u5019\u5fc5\u987b\u6307\u5b9a\u957f\u5ea6\uff0c\u56e0\u4e3aJVM\u8981\u77e5\u9053\u9700\u8981\u5728\u5806\u4e0a\u5206\u914d\u591a\u5c11\u7a7a\u95f4\u3002\u4f8b\uff1aint[] arr = new int[5];
7\u3001\u4e00\u7ef4\u6570\u7ec4\u7684\u6784\u9020\u3002\u5f62\u5982\uff1aString[] sa = new String[5]; \u6216\u8005\u5206\u6210\u4e24\u53e5\uff1aString[] sa; sa = new String[5];
8\u3001\u539f\u59cb\u7c7b\u578b\u6570\u7ec4\u5143\u7d20\u7684\u9ed8\u8ba4\u503c\u3002\u5bf9\u4e8e\u539f\u59cb\u7c7b\u578b\u6570\u7ec4\uff0c\u5728\u7528new\u6784\u9020\u5b8c\u6210\u800c\u6ca1\u6709\u521d\u59cb\u5316\u65f6\uff0cJVM\u81ea\u52a8\u5bf9\u5176\u8fdb\u884c\u521d\u59cb\u5316\u3002\u9ed8\u8ba4\u503c\uff1abyte\u3001short\u3001 int\u3001long--0 float--0.0f double--0.0 boolean--false char--'"u0000'\u3002\uff08\u65e0\u8bba\u8be5\u6570\u7ec4\u662f\u6210\u5458\u53d8\u91cf\u8fd8\u662f\u5c40\u90e8\u53d8\u91cf\uff09
10\u3001\u5bf9\u8c61\u7c7b\u578b\u7684\u6570\u7ec4\u867d\u7136\u88ab\u9ed8\u8ba4\u521d\u59cb\u5316\u4e86\uff0c\u4f46\u662f\u5e76\u6ca1\u6709\u8c03\u7528\u5176\u6784\u9020\u51fd\u6570\u3002\u4e5f\u5c31\u662f\u8bf4\uff1aCar[] myCar = new Car[10];\u53ea\u521b\u5efa\u4e86\u4e00\u4e2amyCar\u6570\u7ec4\u5bf9\u8c61\uff01\u5e76\u6ca1\u6709\u521b\u5efaCar\u5bf9\u8c61\u7684\u4efb\u4f55\u5b9e\u4f8b\uff01
11\u3001\u591a\u7ef4\u6570\u7ec4\u7684\u6784\u9020\u3002float[][] ratings = new float[9][]; \u7b2c\u4e00\u7ef4\u7684\u957f\u5ea6\u5fc5\u987b\u7ed9\u51fa\uff0c\u5176\u4f59\u7684\u53ef\u4ee5\u4e0d\u5199\uff0c\u56e0\u4e3aJVM\u53ea\u9700\u8981\u77e5\u9053\u8d4b\u7ed9\u53d8\u91cfratings\u7684\u5bf9\u8c61\u7684\u957f\u5ea6\u3002
12\u3001\u6570\u7ec4\u7d22\u5f15\u7684\u8303\u56f4\u3002\u6570\u7ec4\u4e2d\u5404\u4e2a\u5143\u7d20\u7684\u7d22\u5f15\u662f\u4ece0\u5f00\u59cb\u7684\uff0c\u5230length-1\u3002\u6bcf\u4e2a\u6570\u7ec4\u5bf9\u8c61\u90fd\u6709\u4e00\u4e2alength\u5c5e\u6027\uff0c\u5b83\u4fdd\u5b58\u4e86\u8be5\u6570\u7ec4\u5bf9\u8c61\u7684\u957f\u5ea6\u3002\uff08\u6ce8\u610f\u548cString\u5bf9\u8c61\u7684length()\u65b9\u6cd5\u533a\u5206\u5f00\u6765\uff09
13\u3001Java\u6709\u6570\u7ec4\u4e0b\u6807\u68c0\u67e5\uff0c\u5f53\u8bbf\u95ee\u8d85\u51fa\u7d22\u5f15\u8303\u56f4\u65f6\uff0c\u5c06\u4ea7\u751fArrayIndexOutOfBoundsException\u8fd0\u884c\u65f6\u5f02\u5e38\u3002\u6ce8\u610f\uff0c\u8fd9\u79cd\u4e0b\u6807\u68c0\u67e5\u4e0d\u662f\u5728\u7f16\u8bd1\u65f6\u523b\u8fdb\u884c\u7684\uff0c\u800c\u662f\u5728\u8fd0\u884c\u65f6\uff01\u4e5f\u5c31\u662f\u8bf4int[] arr = new int[10]; arr[100] = 100; \u8fd9\u4e48\u660e\u663e\u7684\u9519\u8bef\u53ef\u4ee5\u901a\u8fc7\u7f16\u8bd1\uff0c\u4f46\u5728\u8fd0\u884c\u65f6\u629b\u51fa\uff01
Java\u4e2d\u7684\u6570\u7ec4\u4e2d\u65e2\u53ef\u4ee5\u5b58\u50a8\u57fa\u672c\u7684\u503c\u7c7b\u578b\uff0c\u4e5f\u53ef\u4ee5\u5b58\u50a8\u5bf9\u8c61\u3002\u5bf9\u8c61\u6570\u7ec4\u548c\u539f\u59cb\u6570\u636e\u7c7b\u578b\u6570\u7ec4\u5728\u4f7f\u7528\u65b9\u6cd5\u4e0a\u51e0\u4e4e\u662f\u5b8c\u5168\u4e00\u81f4\u7684\uff0c\u552f\u4e00\u7684\u5dee\u522b\u5728\u4e8e\u5bf9\u8c61\u6570\u7ec4\u5bb9\u7eb3\u7684\u662f\u5f15\u7528\u800c\u539f\u59cb\u6570\u636e\u7c7b\u578b\u6570\u7ec4\u5bb9\u7eb3\u7684\u662f\u5177\u4f53\u7684\u6570\u503c\u3002\u5728\u8ba8\u8bba\u5173\u4e8e\u6570\u7ec4\u7684\u95ee\u9898\u65f6\uff0c\u4e00\u5b9a\u8981\u5148\u786e\u5b9a\u6570\u7ec4\u4e2d\u5b58\u50a8\u7684\u662f\u57fa\u672c\u503c\u7c7b\u578b\u8fd8\u662f\u5bf9\u8c61\u3002\u7279\u522b\u662f\u5728\u8c03\u8bd5\u7a0b\u5e8f\u65f6\uff0c\u8981\u6ce8\u610f\u8fd9\u65b9\u9762\u3002

\u5982\u679c\u63a5\u6536\u4e0d\u5b9a\u6570\u91cf\u7684\u5185\u5bb9,\u5efa\u8bae\u4e0d\u8981\u4f7f\u7528\u6570\u7ec4,\u4f60\u53ef\u4ee5\u7528List\u4e4b\u7c7b\u7684\u6765\u63a5\u6536,\u7528\u8d77\u6765\u57fa\u672c\u4e00\u81f4,\u4f46\u662f\u6ca1\u6709\u6570\u7ec4\u90a3\u4e2a\u5b9a\u957f\u7684\u7ea6\u675f

public static int[] rN(int[] arr){
int[] a = new int[100];//0-100
int[] result = new int[10];//结果数组
int lenth = 100;//总长度100
//初始化数组a
for(int i=1; i<=100; i++)
a[i-1]=i;
Random rd = new Random();
for (int j=0; j<10; j++){
result[j] = a[rd.nextInt(lenth)];//产生一个随机数,存入结果
//将这个数从a删除
for (int k=result[j];k<lenth-1;k++){
a[k] = a[k+1];
}
lenth--;//总长度减1
}
return result; //返回结果
}

如果括号里面是 int a[]
那么
public static int[] rN(int[] a){
int[] s= a;//将s作为中转
int[] result = new int[10];//结果数组
int lenth = 100;//总长度100

Random rd = new Random();
for (int j=0; j<10; j++){
result[j] = s[rd.nextInt(lenth)];//产生一个随机数,存入结果
//将这个数从s删除
for (int k=result[j];k<lenth-1;k++){
s[k] = s[k+1];
}
lenth--;//总长度减1
}
return result; //返回结果
}

int[] c = new int[10];//最后取出的10个数字的数组
//生产1到100的数组
int[] a = new int[100];
for (int i = 1; i < a.length+1; i++) {
a[i-1] = i;
}
//生成boolean值组成的长度为100的数组,其默认值为false
boolean[] b = new boolean[100];
System.out.println(Arrays.toString(a)+"\n"+
Arrays.toString(b));
//从数组中取出10个随机不重复的数字组成新的数组
if(a.length==b.length){
int num = 0;//已取出数字的数量

for(;;){//循环取数
if(num==10){//当取了10个数字时,跳出循环
break;
}
//随机生成一个0到99的数字作为取出数字的下标
Random r = new Random();
int index = r.nextInt(100);
//利用index下标取出一个数字,并将该下标的位置标记为true
if(!b[index]){
int n = a[index];
c[num] = n;
b[index] = true;
num++;
}
}
}
//输出取出的数字数组
System.out.println(Arrays.toString(c));

public class Demo {

    /**
     * 此方法适用于处理所有长度的数组
     * @param arr 原数组
     * @return 从原数组中随机选取10个数据放入新数组返回
     */
    public static int[] rN(int[] arr) {
        //如果原数组长度不大于10,直接返回原数组
        if(arr.length<=10){
            return arr;
        }
        //大于10,从中随机选取10个数据放入新数组返回
        int[] newArray = new int[10];
        boolean[] bool = new boolean[arr.length+1];
        int temp = 0;
        Random rand = new Random();
        for (int i = 0; i < 10; i++) {
            do {
                temp = arr[rand.nextInt(arr.length+1)];
            } while (bool[temp]);
            bool[temp] = true;
            newArray[i] = temp;
        }
        return newArray;
    }

    //测试
    public static void main(String[] args) {
        int[] oldArray = new int[100];
        for (int i = 1; i <= 100; i++) {
            oldArray[i - 1] = i;
        }
        System.out.println(Arrays.toString(rN(oldArray)));
    }
}


public static int[] rN(int[] arr){
int[] a = new int [10]; //到时候要返回的数组
int t;
for(int i=0;i<10;i++){
do{
t = parseInt(Math.random()*100)+1;//得到的随机数
} while (IsDup(a, i, t) == true);//知道不重复才跳出do ...while ..

a[i]=t;
}
return a;
}

//判断key在数组的前len个元素中是否存在
static bool IsDup(int[] arr, int len, int key)
{
int i;
for (i = 0; i < len && arr[i] != key; i++) ;
return (i >= len ? false : true);
}

public static void main(String []args){
int [] a = new int[100];
for(int i = 0 ;i<100;i++){
a[i] = i+1;
}

int [] result = rN(a);
for(int i = 0 ;i<result.length;i++){
System.out.print(result[i] +" ");
}

}
public static int[] rN(int [] a){

int[] returnArr = new int[10];
//判断数组是否满足条件
if(a != null && a.length >=10){
Random random = new Random();
for(int i = 0 ; i<10;i++){
int randomNum = random.nextInt(100);
if(returnArr[i] != a[randomNum]){
returnArr[i] = a[randomNum];
}

}
}
return returnArr;

}

扩展阅读:初学编程必背50个 ... java初学者小程序 ... 为什么都不建议java转测试 ... 快排 java ... java入门网站 ... 零基础java入门教程 ... java初学者视频教程 ... java基础知识大全 ... 初学者学c还是java ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网