我有一个包含人的BinarySearchTree。每个人都有一个生日月份的属性。
如果人们的生日月份相同,我有以下代码尝试将节点推送到堆栈。但是当我运行这个程序时,它抛出了一个java.lang.OutOfMemoryError: Java heap space。
如何获取具有相同生日月份的所有元素并将其推送到堆栈?
编辑:基于ok KarlP的答案的工作代码
//Part of the code
//Declared in Instance Variables
private Stack<BinaryNode> st = new Stack<BinaryNode>
我在打开序列化到单个.bin文件中的多个对象时遇到问题。现在,当我试图打开文件时,我只能读入一个对象。读取第一个对象后,将显示错误消息(不再读取其他对象)。我的代码如下所示:
val ois = new ObjectInputStream(new BufferedInputStream(newFileInputStream(chooser.selectedFile)))
val toRead:Int = ois.readInt()
for (i <- 0 to toRead) {
ois.readObject() match {
case anObj
我正在学习Java,我不懂下面的代码。
public static void main(String[] args) {
try {
int numbers[] = new int[5];
int total = 0;
for(int i = 0; i < 5; i++) {
System.out.println(i);
total += numbers[i];
}
}
catch(Exception e) {
我正在编写一个将前缀表达式转换为后缀表达式的程序。对于像" x-x-ABC+BA“这样的表达式,程序应该抛出一个超出界限的异常,并且程序应该继续到下一行(从输入文档中),我已经设法使它对像”x+BA“这样的表达式工作,但是如果有两个连续的表达式会产生超出界限的异常,程序就会中断。
public class Main {
public static void main(String[] args) {
BufferedReader input = null;
String prefix_exp;
try {
我正在使用套接字来实现即时消息。
我在客户端有以下Java代码:
while ( true )
checkInputStream();
以下是功能:
private void checkInputStream() throws IOException
{
//prints once, but after the first input arrives, it prints infinitely
Log.i( "MY_TAG", "CHECKING INPUT STREAM");
String inputLine;
我想知道为什么这个循环在VB.NET中没有显示任何内容。
我认为这段代码会创建一个无限循环。但它没有显示任何东西。
Dim i as Integer
For i = 1 to 3 Step - 1
MessageBox.Show(i)
Next
这个循环与这个代码(在java/c#中)有什么不同吗?
for(int i = 1;i <= 3;i--)
{
// print i
}
如何使用java代码来控制麦克风的开断功能?我需要控制麦克风打开的时间。我尝试在java中使用以下代码:
final AudioFormat format = getFormat();//getformat() has the audio format
DataLine.Info info = new DataLine.Info(TargetDataLine.class, format);
final TargetDataLine line = (TargetDataLine) AudioSystem.getLine(info);
line.open(format
我为一个"GPS蓝牙接收器“写了一些代码,它发送给我持续的数据,我收到了,但我无法在我的text-box中显示。
建议我如何改进我的代码继续数据,而‘而循环’没有结束。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Enumeration;
import java.util.TooManyListenersException;
public class communication {
public stati
我对Java还不熟悉,而且还很好地解决了这个问题。如果这个问题听起来很简单,请原谅。
这是一个质数检查问题,如果是,我必须返回1,如果不是素数,则返回0。这里有一个简单的代码,但是我如何打破循环呢?我总是得到错误‘中断外部开关或环路’。我的休息不是在循环中吗?
public class PrimeNumberChecker {
public static int isPrime(int num){
int bin = 1;
int i;
for (i=2; i<num; i++);{
if (num%i==0
我从教科书中复制了这个精确的代码,当我试图运行它时,它只做加载,文件位于java文件的相同位置,并且名称是正确的。我在用Java博士。所以我只是想知道为什么它不能运行,只是继续加载。我正在使用的书是Java照亮的第三版。另外,newscores.txt文件只有10个数字,由空格分隔。
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
public class TestScoresAndSummaryStatistics {
public static void main(String[
我正在编写一个用java编写的空间入侵者,我几乎完成了实际的工作部分,但是我继续得到这个错误:
Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.remove(ArrayList.java:492)
at GamePanel.shotDelete(SpaceInvaders.java:261
int logarithmCeiling(int x) {
int power = 1;
int count = 0;
while (power < x) {
power = 2 *power;
count = count +1;
}
return count;
}
上面的代码是Java中的一个方法,用于使用while循环计算和返回给定正整数的下对数。我如何为上面的循环提供一个不变量?即,在其开始之前、每次循环体结束时、以及循环条件的否定之前保持。
下面是我的三个类:
Array_List.java:
import java.util.*;
public class Array_List {
public long startTime, difference = 0;
public ArrayList<Integer> a;
public Array_List() {
a = new ArrayList<Integer>();
}
public void buildArray() {
startTime = System.currentTimeMilli
我正在尝试重写一个文件后,有人赢或输了一个游戏的21世纪。每次我在比赛中获胜,我都会犯这样的错误:
Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Unknown Source)
at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
at java.lang.AbstractStringBuilder.ens
这是抛出NPE的方法:
public void removeItemsbyBadWords() {
String[] arrBadWords = settings.getBadWords();
for(int i = 0;i < arrBadWords.length;++i) {
String filter = ":contains("+arrBadWords[i]+")";
Elements ele = newsHeadlines.select(filter);
if (ele != nu
我得到了下面的代码,但是在第一个循环之后,我的调试器给出了以下错误,这很奇怪,我一直这样做,但是它不再工作了,这很奇怪吗?!我一步一步地检查过了,只是在下了开关订单后才停下来?
Exception in thread "main" java.lang.IllegalStateException: Scanner closed
at java.util.Scanner.ensureOpen(Unknown Source)
at java.util.Scanner.findWithinHorizon(Unknown Source)
a
当尝试从MySQL语句中检索一些数据时,我会得到上面的错误,因为错误声明在第118行;下面是MySQL:
.prepareStatement("SELECT orderr.* FROM orderr JOIN person ON orderr.personID = person.personID WHERE person.first_name = ?",java.sql.ResultSet.TYPE_FORWARD_ONLY, java.sql.ResultSet.CONCUR_READ_ONLY, Integer.MIN_VALUE);
当我尝试执行这段代码时,我得到了以下错误,我不知道为什么。这似乎与使用StringBuffer并附加到它有关。 代码: class Stock {
static String findStock(int[] arr) {
int flag = 0;
int begin = 0;
int start = 0;
int endIndex = 0;
boolean foundStart = false;
StringBuffer op = new StringBuffer();
嗨,伙计们,当我尝试运行我的程序时,我一直收到下面的错误。
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:592)
at java.lang.Integer.parseInt(In