Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何创建包含1000个随机生成的整数的数组?_Java_Arrays_Int - Fatal编程技术网

Java 如何创建包含1000个随机生成的整数的数组?

Java 如何创建包含1000个随机生成的整数的数组?,java,arrays,int,Java,Arrays,Int,我应该创建一个1000整数的数组,并编写一个方法来查找最大的整数,然后打印它。这就是我到目前为止所做的: public static int findLargest(int[] numbers){ int largest = numbers[0]; for(int i = 1; i < numbers.length; i++){ if(numbers[i] > largest){ largest = number

我应该创建一个1000整数的数组,并编写一个方法来查找最大的整数,然后打印它。这就是我到目前为止所做的:

public static int findLargest(int[] numbers){  
    int largest = numbers[0];  
    for(int i = 1; i < numbers.length; i++){  
        if(numbers[i] > largest){  
            largest = numbers[i];  
        }  
    }  
    return largest;
}
公共静态int findLargest(int[]个数){
int最大=数字[0];
对于(inti=1;i最大){
最大=数字[i];
}  
}  
回报最大;
}

首先,如何创建一个包含1000个随机生成的整数的数组?我尝试了
int[]array=new(int)(Math.random())仔细观察,您的
findLargest
方法看起来不错——它使用了正确的方法

要生成1000个数字的列表,需要将数组初始化为1000个元素。现在您正在初始化它,使其具有随机数目的元素,这不是您想要的。将数字初始化为长度为1000的int[]后,需要在数组上循环,将随机数放入。有点像

int [] numbers = new int[1000]; // generate a new int[]

for (i = 0; i < number.length; i++) {
  numbers[i] = xxxx; // generate a random number
}
int[]number=new int[1000];//生成一个新的int[]
对于(i=0;i
您可能应该创建某种类型的
init
方法来为您创建原始数组。您可以在main中调用它,获取对数组的引用,然后将该数组传递给find方法,然后打印结果

您就快到了。

您可以使用Java的类来生成随机整数。然后用随机整数填充数组并调用方法,将数组传递给它

// Random number generator
Random r = new Random();

// Create array of 1000 ints
int[] intArr = new int[1000];

// Fill array with random ints
for ( int i = 0; i < intArr.length; i++ ) {
    intArr[i] = r.nextInt();
}

// Print result
System.out.println( findLargest( intArr ) );
//随机数生成器
随机r=新随机();
//创建1000整数的数组
int[]intArr=新int[1000];
//用随机整数填充数组
对于(int i=0;i
int[]randArray=newint[1000];
对于(int i=0;i<1000;i++){
随机数组[i]=(int)(Math.random()*1000);
}
System.out.println(findLargest(randArray));

查找最大的
int
的另一种方法是使用
java.util.Arrays.sort(int[])
,然后打印数组的最后一个元素。

此程序: -使用Arraylist存储数字 -使用集合对数字进行排序 -使用for loop循环遍历Arraylist,并使用Math.random()将其填充为随机数。 -打印Arraylist中的最大数字。 我希望它能回答你的问题。 请给我们一个反馈

import java.util.ArrayList;
import java.util.Collections;

public class prac
{
    public static void main(String args[])
    {
        ArrayList<Double> MyArrayList=new ArrayList<Double>();


        for(int i=0;i<100;i++)
        {               
            MyArrayList.add(Math.random());
        }

        Collections.sort(MyArrayList);


        for(int j=0;j<MyArrayList.size();j++)
        {
            System.out.println(MyArrayList.get(j));
        }

        System.out.println("The largest Number is:");
        System.out.println(MyArrayList.get(-1+MyArrayList.size()));

    }
import java.util.ArrayList;
导入java.util.Collections;
公共级普拉克
{
公共静态void main(字符串参数[])
{
ArrayList MyArrayList=新建ArrayList();

对于(int i=0;i我实际上有一个预先创建的类,用于查找任何一组值中的最大整数。您可以将该类放入项目中,并在任何类中使用它,如下所示:

     System.out.println(figures.getLargest(8,6,12,9,120));
这将返回值“120”并将其放入输出中。如果您有兴趣使用它,请参阅以下方法源代码:

公众人物{

public static int getLargest(int...f) {
    int[] score = new int[f.length];
    int largest=0;
    for(int x=0;x<f.length;x++) {
        for(int z=0;z<f.length;z++) {
            if(f[x]>=f[z]) {
                score[x]++;
            }else if(f[x]<f[z]) {

            }else {
                continue;
            }
            if(z>=f.length) {
                z=0;
                break;
            }
        }
    }
    for(int fg=0;fg<f.length;fg++) {
        if(score[fg]==f.length) {
            largest = f[fg];
        }
    }
    return largest;
}
公共静态int getmax(int…f){
int[]分数=新的int[f.长度];
int最大=0;
对于(intx=0;x
intn[]={1,5,7,3};
for(int i=0;i n[0]){
n[0]=n[i];
}
}
System.out.println(n[0]);

return语句很好,只是缩进严重。@user949300是的,我把它留给学生去弄清楚。我用(int)(Math.random()*100)替换为“XXXX”但它总是打印出99。我做错了什么?请注意,在for中的
I
前面没有
int
loop@user1157541:在随机生成的1000个0到99之间的数字数组中,99可能是最大的值。你应该给学生留下一些实际要做的事情。你在第二个答案后10分钟要发布,您的答案不是添加任何唯一的内容。您应该删除此内容。如果您只是处理double,则无需使用ArrayList。使用primitive double可以获得更好的性能。不要忘记java.util.Arrays.sort()感谢您提供了一个很好的简单解决方案。
public static int getLargest(int...f) {
    int[] score = new int[f.length];
    int largest=0;
    for(int x=0;x<f.length;x++) {
        for(int z=0;z<f.length;z++) {
            if(f[x]>=f[z]) {
                score[x]++;
            }else if(f[x]<f[z]) {

            }else {
                continue;
            }
            if(z>=f.length) {
                z=0;
                break;
            }
        }
    }
    for(int fg=0;fg<f.length;fg++) {
        if(score[fg]==f.length) {
            largest = f[fg];
        }
    }
    return largest;
}
int n[] = {1,5,7,3};
    for(int i=0;i<n.length;i++){
        if(n[i] > n[0]){
        n[0] = n[i];
        }
    }
    System.out.println(n[0]);