当前位置: 首页 > 面试题库 >

如何在Java中制作大型数组

吉玉石
2023-03-14
问题内容

我想创建一个布尔数组,该数组的大小将为用户输入。例如-用户可能会输入一个大数字,例如1000000000000;
所以然后我必须创建一个大小为1000000000000的布尔数组。我面临的问题是,我无法将输入存储为int,因为它不能容纳这么大的数字-
因此我无法创建该数组。Double是一个我可以将输入数字存储为double,但是我不知道如何创建double大小的数组。这就是-

Scanner scanner = new Scanner(System.in);
int target = scanner.nextInt();
boolean [] array_a=new boolean [(target)];

如果目标超出int范围,该方法将不起作用。不胜感激。

更新: 谢谢大家。所以您只能创建一个int的最大范围大小的数组(即2147483648),对吗?采取不同的方法。


问题答案:

必须创建一个大小为1000000000000的布尔数组。我面临的问题是,我不能将输入存储为int

你的问题不是那个。您的主要问题是您将没有足够的内存来分配具有1,000,000,000,000元素的数据结构(即使您克服了int索引的限制)。

您需要重新考虑算法



 类似资料:
  • 问题内容: 由于数组中的equals函数仅检查实例,因此它不适用于Set。因此,我想知道如何在Java中制作一组数组? 一种可能的方法是将每个数组放在一个对象中,并为该类实现equals函数,但这会降低性能吗? 问题答案: 由于ArrayList类已经包装了一个数组,因此您可以扩展它并覆盖and 方法。这是一个示例: 更新: 您甚至可以重写它以用于一般用途,只需将代码更改为:

  • 问题内容: 喜欢标题中的内容如何对.txt文件进行过滤? 我写了这样的东西,但有错误:( 问题答案: 在这里,您将找到一些工作示例。这也是JFileChooser中使用的FileFilter的一个很好的示例。 基础是,您需要重写FileFilter类,并在其accpet方法中编写自定义代码。上例中的accept方法是根据文件类型进行过滤: 或更简单易用的是FileNameFilter,它具有以fi

  • 嗨,我正在使用jframe, 现在我希望人们只编辑yAdmin,人们可以看到adminForm,但他们不能触摸它之前的yAdmin关闭。

  • 问题内容: 假设地,我有5个字符串数组对象: 我希望另一个数组对象包含这5个字符串数组对象。我该怎么做?我可以把它放在另一个数组中吗? 问题答案: 像这样: 要么 (后一种语法可以用于变量声明之外的赋值中,而较短的语法仅适用于声明。)

  • 本文向大家介绍如何在Java中调整数组大小?,包括了如何在Java中调整数组大小?的使用技巧和注意事项,需要的朋友参考一下 数组无法在Java中动态调整大小。  一种方法是使用java.util.ArrayList(或java.util.Vector)代替本机数组。 另一种方法是重新分配大小不同的数组,然后将旧数组的内容复制到新数组。 例: 输出:

  • 问题内容: 给定Date有一个名为“ after(Date)”的方法,而Timestamp有一个名为“ after(Timestamp)”的方法,为什么在以下代码中调用Date中的 after 方法? 至于意外结果有人问在这里。 结果 问题答案: 重载是在编译时考虑的;覆盖在执行时考虑。 时间戳 重载 ,它不会 覆盖 现有方法- 因此您只考虑了中的方法; 而且即使你使用它会 仍然 只使用因为编译时