小编FTh*_*son的帖子

Java中的按位异或是什么?

鉴于:

public class Spock {
    public static void main(String[] args) {
        Long tail = 2000L;
        Long distance = 1999L;
        Long story = 1000L;
        if ((tail > distance) ^ ((story * 2) == tail)) {
            System.out.print("1");
        }
        if ((distance + 1 != tail) ^ ((story * 2) == distance)) {
            System.out.print("2");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

为什么这个示例代码不输出任何内容?

java scjp

6
推荐指数
2
解决办法
9923
查看次数

为什么我们有时使用十六进制格式而不是十进制?

我已经阅读了有关的解释

int a = 0x1; //hexadecimal format
Run Code Online (Sandbox Code Playgroud)

但是,我仍然无法找到程序员应该使用0x1,0x2而不是普通整数1或2的原因...

有人可以解释一下吗?

谢谢.

java variables hex

6
推荐指数
2
解决办法
518
查看次数

在Java中检索当前的大写锁定状态

使用以下代码:

Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK)
Run Code Online (Sandbox Code Playgroud)

不幸的是,只返回false.

根据文档,这应该工作:http://docs.oracle.com/javase/8/docs/api/java/awt/Toolkit.html#getLockingKeyState-int-

可运行的例子:

import java.awt.Toolkit;
import java.awt.event.KeyEvent;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;


public class Foo {

    public static void main(String[] args) {

        ExecutorService executorService = Executors.newFixedThreadPool(1);

        executorService.execute(new Runnable() {
            public void run() {
                while(true) {
                    try{ Thread.sleep(250); }catch(Exception ignored) { }
                    System.out.println("Capslock state: " + Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK));
                }
            }
        });

        executorService.shutdown();
    }

}
Run Code Online (Sandbox Code Playgroud)

应该补充说我在Windows上使用Java SE 1.8并且我的Caplock键工作正常

控制台输出截图:

在此输入图像描述

java

6
推荐指数
1
解决办法
601
查看次数

预览字体,然后再上传

我希望在<input type="file">输入中选择字体文件后对其进行预览。

我尝试了一种类似于预览图像的方法(类似于此答案),但是使用的是Font对象而不是Image对象。但是,设置了字体后,字体无法加载src,因为它会搜索系统上安装的字体,但使用临时名称。

我怎样才能做到这一点?

javascript jquery fonts file-upload

5
推荐指数
1
解决办法
343
查看次数

正则表达式X和/或Y.

考虑以下正则表达式,其中XY任何正则表达式.

XY|YX|X|Y
Run Code Online (Sandbox Code Playgroud)

这个正则表达式测试X和/或Y,但如果找不到"和"子句,则必须仔细检查表达式.

匹配X 和/或 Y?的最佳方式是什么?

php java regex

5
推荐指数
1
解决办法
3107
查看次数

为什么“ a”是对象引用的Java字节码前缀?

特定于类型的Java字节码指令具有单字符前缀以指定该指令所涉及的类型。

在此处输入图片说明 摘自Wikipedia关于Java字节码的条目

在每种情况下,前缀选择都是有意义的,它由该类型的第一个字母组成(布尔型除外,布尔型没有指令前缀)。但是,对象引用前缀似乎不合逻辑,因为o和和r(两个第一字母)都是免费的。相反,对象引用指令a用作其前缀。

对象引用字节码指令为什么前缀a,而不是貌似更合适o还是r

java bytecode instructions

5
推荐指数
1
解决办法
251
查看次数

在数组java上存储字符串

我想知道是否可以在String数组上存储String变量?我不能很好地解释它,但这是我做的:

 String st1 = "",st2 = "",st3 = "",st4 = "";
 String[] str = {st1,st2,st3,st4};
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我使用for循环时,str获取st1和st2以及st3和st4的值而不是它自己的变量..

这就是我想要完全按照我的想法做的事情.每当有一个String数组时,例如:

String[] containsValue = { "hi", "hello", "there" };

String strHi, strHello, strThere;
String[] getContainsValue = { strHi, strHello, strThere };

for (int x = 0; x < getContainsValue.length; x++) {
    getContainsValue[x] = containsValue[x];
}

The value of:
strHi = "hi"
strHello = "hello"
strThere = "there";
Run Code Online (Sandbox Code Playgroud)

基本上我想将containsValue []的值传递给3个String,它是存储在getContainsValue []中的strHi,strHello,strThere.然后使用for循环来对它们赋值来自containsValue [].这是真的吗?如果是这样,那么你可以给我一些格式怎么做?谢谢..

java android

4
推荐指数
1
解决办法
3735
查看次数

用Java获取系统正常运行时间

如何确定计算机已启动多长时间(以毫秒为单位)?

java system

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

如何在一个标题下使用JNAerator和多个动态库?

我正在使用JNAerator生成一个我可以包含在项目中的jar文件,我想支持每个操作系统的动态库并在这个jar中进行全部归档.

到目前为止,在摆弄JNAerator时,我已经能够使用如下命令包含单个动态库:

java -jar jnaerator.jar test.dll test.h [...] -mode StandaloneJar
Run Code Online (Sandbox Code Playgroud)

然而,这只包test.dll,而我有多个系统(动态库test_win32.dll,test_win64.dll,libtest_mac.dylib,libtest_linux_x86.so,和libtest_linux_amd64.so),我想都已经打包成和一个罐子的支持.

有没有办法用一次JNAerator运行这种"一体化"方法,还是我必须为每个平台生成一个不同的jar文件?

java java-native-interface cross-platform shared-libraries jnaerator

4
推荐指数
1
解决办法
1896
查看次数

PHP异常/奇怪的行为

当我跑:

for($o=1;$o<=655;$o++){ $r = $r+0.01; echo $r." ";}

在某些时候,我得到:

...4.29 4.3 4.31 4.32 4.33 4.34 4.35 4.36 4.37 4.38 4.39 4.4
4.41 4.42 4.4299999999999 4.4399999999999 4.4499999999999
4.4599999999999 4.4699999999999 ...
Run Code Online (Sandbox Code Playgroud)

但是当我跑步时:

for($o=1;$o<=5;$o+=0.01){ echo $o." "; }

异常开始于:

4.34 4.35 4.36 4.37 4.38 4.3899999999999 4.3999999999999
Run Code Online (Sandbox Code Playgroud)

为什么添加是for循环的一部分,或者在for循环中有什么区别?

php floating-point

3
推荐指数
1
解决办法
266
查看次数