小编use*_*155的帖子

如何在Java中生成特定范围内的随机整数?

如何int在特定范围内生成随机值?

我试过以下,但那些不起作用:

尝试1:

randomNum = minimum + (int)(Math.random() * maximum);
// Bug: `randomNum` can be bigger than `maximum`.
Run Code Online (Sandbox Code Playgroud)

尝试2:

Random rn = new Random();
int n = maximum - minimum + 1;
int i = rn.nextInt() % n;
randomNum =  minimum + i;
// Bug: `randomNum` can be smaller than `minimum`.
Run Code Online (Sandbox Code Playgroud)

java random integer

3373
推荐指数
45
解决办法
391万
查看次数

使用Java将文件从一个目录复制到另一个目录

我想使用Java将文件从一个目录复制到另一个目录(子目录).我有一个目录,dir,带有文本文件.我在dir中遍历前20个文件,并希望将它们复制到dir目录中的另一个目录,这是我在迭代之前创建的.在代码中,我想复制review(代表第i个文本文件或审查)trainingDir.我怎样才能做到这一点?似乎没有这样的功能(或者我找不到).谢谢.

boolean success = false;
File[] reviews = dir.listFiles();
String trainingDir = dir.getAbsolutePath() + "/trainingData";
File trDir = new File(trainingDir);
success = trDir.mkdir();
for(int i = 1; i <= 20; i++) {
    File review = reviews[i];

}
Run Code Online (Sandbox Code Playgroud)

java directory copy file

147
推荐指数
14
解决办法
41万
查看次数

"没有X11 DISPLAY变量" - 这是什么意思?

我正在尝试在我的Linux机器(Slackware)上安装Java应用程序.

我收到了以下错误,我不明白.

你能告诉我如何处理这个问题吗?谢谢.

这是我得到的:(我看到需要设置一些X11 DISPLAY变量,但我应该给它什么值以及如何?)

~$ java -jar gate-5.0-beta1-build3048-installer.jar
- ERROR -

java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.awt.GraphicsEnvironment.checkHeadless(Graphic sEnvironment.java:159)
at java.awt.Window.<init>(Window.java:407)
at java.awt.Frame.<init>(Frame.java:402)
at net.sourceforge.mlf.metouia.borders.MetouiaDotsBuf fer.<init>(MetouiaDotsBuffer.java:105)
at net.sourceforge.mlf.metouia.borders.MetouiaDots.<i nit>(MetouiaDots.java:66)
at net.sourceforge.mlf.metouia.borders.MetouiaToolBar Border.<init>(MetouiaToolBarBorder.java:49)
at net.sourceforge.mlf.metouia.MetouiaLookAndFeel.ini tComponentDefaults(MetouiaLookAndFeel.java:241)
at javax.swing.plaf.basic.BasicLookAndFeel.getDefault s(BasicLookAndFeel.java:130)
at javax.swing.plaf.metal.MetalLookAndFeel.getDefault s(MetalLookAndFeel.java:1591)
at javax.swing.UIManager.setLookAndFeel(UIManager.jav a:537)
at javax.swing.UIManager.setLookAndFeel(UIManager.jav a:581)
at com.izforge.izpack.installer.GUIInstaller.loadLook AndFeel(GUIInstaller.java:373) …
Run Code Online (Sandbox Code Playgroud)

java linux x11 variables headless

94
推荐指数
5
解决办法
41万
查看次数

原始类型'短' - 用Java编写

我对shortJava中的原始类型有疑问.我使用的是JDK 1.6.

如果我有以下内容:

short a = 2;
short b = 3;
short c = a + b;
Run Code Online (Sandbox Code Playgroud)

编译器不想编译 - 它说它"无法从int转换为short"并建议我进行转换short,所以这样:

short c = (short) (a + b);
Run Code Online (Sandbox Code Playgroud)

确实有效.但我的问题是为什么我需要施放?a和b的值在short- 范围内 - 短值范围是{-32,768,32767}.我还需要在我想执行操作时进行投射 - ,*,/(我没有检查过其他人).

如果我对原始类型做同样的int事情,我不需要将aa + bb转换为int.以下工作正常:

int aa = 2;
int bb = 3;
int cc = aa +bb;
Run Code Online (Sandbox Code Playgroud)

我在设计一个类时需要添加两个类型为short的变量,并且编译器希望我进行转换.如果我用两个类型的变量做这个int,我不需要强制转换.

一句小话:原始类型也会发生同样的事情byte.所以,这有效:

byte a = 2;
byte b = 3;
byte c = (byte) (a + b); …
Run Code Online (Sandbox Code Playgroud)

java primitive casting short

76
推荐指数
5
解决办法
13万
查看次数

如何在Java中替换字符串中的字符?

使用Java,我想浏览文本行并用&XML实体引用替换所有的&符号()&amp;.

我使用Scanner类扫描文本的行,然后扫描文本中的每个单词.然后我用它CharacterIterator来迭代单词的每个字符.但是,我该如何更换角色呢?首先,字符串是不可变对象.其次,我想&用几个字符(amp&;)替换一个字符().我该怎么做呢?

CharacterIterator it = new StringCharacterIterator(token);
for(char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) {
       if(ch == '&') {

       }
}
Run Code Online (Sandbox Code Playgroud)

java replace

64
推荐指数
5
解决办法
39万
查看次数

在Java中关闭Streams

在我们离开程序之前,为什么我们需要在任何情况下关闭FileInputStream(和一般的流)?否则会发生什么?如果程序在程序中明确关闭输入流之前停止,则流是否也会自动关闭?

java stream

53
推荐指数
6
解决办法
3万
查看次数

Java中的默认构造函数和继承

我有一个关于Java中的默认构造函数和继承的问题.

通常,如果你编写一个类并且不包含任何构造函数,Java会自动为你提供一个默认构造函数(一个没有参数),它初始化类的所有实例变量(如果有的话)都有一些默认值(0,null或者是假的.但是,如果使用某些参数编写构造函数,并且不编写任何默认构造函数,则Java不提供默认构造函数.我的问题是:类继承自其他类的情况是什么 - 如果我编写一个带有一些参数的构造函数,但是不包含默认构造函数,它们是否继承了超类的默认构造函数?

java inheritance initialization default-constructor

51
推荐指数
5
解决办法
9万
查看次数

将字符串与空字符串进行比较(Java)

我有一个关于在Java中将字符串与空字符串进行比较的问题.有没有区别,如果我将字符串与空字符串比较==equals?例如:

String s1 = "hi";

if (s1 == "")
Run Code Online (Sandbox Code Playgroud)

要么

if (s1.equals("")) 
Run Code Online (Sandbox Code Playgroud)

我知道应该比较字符串(和一般的对象)equals,而不是==,但我想知道它是否对空字符串很重要.

java string comparison string-comparison

32
推荐指数
6
解决办法
7万
查看次数

Java中的继承 - 创建子类的对象也会调用超类的构造函数.为什么呢?

我有一个关于Java继承的问题.

我有两个班A,并B和B类,继承自答:

public class A {
     public A() {
         System.out.println("Hi!");
     }
}


public class B extends A {
     public B() {
         System.out.println("Bye!");
     }

     public static void main(String[] args) {
         B b = new B();
     }
}
Run Code Online (Sandbox Code Playgroud)

当我运行程序B时,输出是:

Hi!
Bye!
Run Code Online (Sandbox Code Playgroud)

:为什么构造函数class A调用,当我创建和对象的class B

我知道B继承了A - 所有实例或类变量以及所有方法的所有内容,在这个意义上,B的对象具有A的所有特征以及B中定义的一些其他特征.但是,我不知道并且没有'我想象当我创建一个B类型的对象时,也会调用A的构造函数.所以写下这个:

B b = new B();
Run Code Online (Sandbox Code Playgroud)

创建两个对象 - 一个是B类,另一个是A类.

这很有趣,

有人可以解释为什么会发生这种情况吗?

java inheritance constructor subclass

23
推荐指数
3
解决办法
3万
查看次数

应该在构造函数中放入多少代码?

我在想Java中构造函数应该放多少代码?我的意思是,你经常在构造函数中调用辅助方法,但有时会有一些较长的初始化事物,例如对于从文件,用户界面或其他程序中读取的程序,只初始化实例变量,构造函数可能会更长(如果你不使用辅助方法).我有一些想法,构造函数通常应该简洁明了,不应该吗?这有例外吗?

java constructor

20
推荐指数
1
解决办法
1万
查看次数