小编ele*_*n81的帖子

在Java中创建"逻辑独占或"运算符

观察:

Java有一个逻辑AND运算符.
Java有一个逻辑OR运算符.
Java有一个逻辑NOT运算符.

问题:

据sun称,Java没有逻辑XOR运算符.我想定义一个.

方法定义:

作为一种方法,它只是定义如下:

public static boolean logicalXOR(boolean x, boolean y) {
    return ( ( x || y ) && ! ( x && y ) );
}
Run Code Online (Sandbox Code Playgroud)


方法调用:

以下列方式调用此方法:

boolean myVal = logicalXOR(x, y);
Run Code Online (Sandbox Code Playgroud)


运营商用法:

我宁愿有一个运算符,使用如下:

boolean myVal = x ^^ y;
Run Code Online (Sandbox Code Playgroud)


题:

我找不到任何关于如何在Java中定义新运算符的内容.我应该从哪里开始?

java operators xor

265
推荐指数
10
解决办法
33万
查看次数

Java相当于unsigned long long?

在C++中,我喜欢访问64位无符号整数,via unsigned long long int或via uint64_t.现在,在Java中,long是64位,我知道.但是,他们签了名.

是否有一个unsigned long(long)可用作Java原语?我该如何使用它?

java primitive unsigned unsigned-long-long-int

104
推荐指数
5
解决办法
21万
查看次数

在Java中表示分数的最佳方式?

我正在尝试使用Java中的分数.

我想实现算术函数.为此,我首先要求一种方法来规范化功能.我知道我不能加1/6和1/2,直到我有一个共同点.我将不得不添加1/6和3/6.一个天真的方法会让我添加2/12和6/12,然后减少.如何实现性能损失最小的共同点?什么算法最适合这个?


版本8(感谢hstoerr):

改进包括:

  • equals()方法现在与compareTo()方法一致
final class Fraction extends Number {
    private int numerator;
    private int denominator;

    public Fraction(int numerator, int denominator) {
        if(denominator == 0) {
            throw new IllegalArgumentException("denominator is zero");
        }
        if(denominator < 0) {
            numerator *= -1;
            denominator *= -1;
        }
        this.numerator = numerator;
        this.denominator = denominator;
    }

    public Fraction(int numerator) {
        this.numerator = numerator;
        this.denominator = 1;
    }

    public int getNumerator() {
        return this.numerator;
    }

    public int getDenominator() {
        return this.denominator;
    } …
Run Code Online (Sandbox Code Playgroud)

java math fractions

95
推荐指数
7
解决办法
9万
查看次数

像ReSharper这样的工具,但对于Java?

我在这里读了很多关于ReSharper的文章.听起来它有很多很酷的功能来帮助程序员.麻烦的是,我不写C#.

是否有任何工具与ReSharper具有相似的功能,但对于Java而言呢?

谢谢!

java resharper

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

如何在PDF表单上启用已填写字段的保存?

可以保存一些PDF表单,包括所有填写的字段数据:

可以保存http://i41.tinypic.com/14lj4o2.png

其他一些无法保存,所有填写的字段数据都会丢失:

无法保存http://i44.tinypic.com/2zgc5mh.png

如何在PDF表单上启用保存填写的字段?

pdf field save pdf-form

44
推荐指数
5
解决办法
30万
查看次数

C++静态代码分析工具是否物有所值?

我们的管理层最近一直在与一些销售C++ 静态分析工具的人交谈.当然销售人员说他们会发现大量的错误,但我持怀疑态度.

这些工具如何在现实世界中发挥作用?他们发现真正的错误吗?他们帮助更多初级程序员学习吗?

他们值得这么麻烦吗?

c++ static-analysis

30
推荐指数
5
解决办法
5329
查看次数

为什么x86寄存器的命名方式如何?

例如,累加器被命名EAX,并且在调用指令指针时IP.我也知道有些字节叫做CLDH.我知道所有名字都必须有一个约定,但它是什么?

x86 assembly history naming

23
推荐指数
5
解决办法
3882
查看次数

使用Eratosthenes的筛子找到素数(原来:有更好的方法来准备这个阵列吗?)

注意:下面的版本2使用了Eratosthenes的Sieve.有几个答案有助于我最初的问题.我选择了Eratosthenes筛选方法,实现了它,并适当地更改了问题标题和标签.感谢所有帮助过的人!

介绍

我写了这个花哨的小方法,它生成一个int数组,其中包含小于指定上限的素数.它工作得很好,但我有一个担忧.

方法

private static int [] generatePrimes(int max) {
    int [] temp = new int [max];
    temp [0] = 2;
    int index = 1;
    int prime = 1;
    boolean isPrime = false;
    while((prime += 2) <= max) {
        isPrime = true;
        for(int i = 0; i < index; i++) {
            if(prime % temp [i] == 0) {
                isPrime = false;
                break;
            }
        }
        if(isPrime) {
            temp [index++] = prime;
        }
    }
    int [] primes = new int …
Run Code Online (Sandbox Code Playgroud)

java arrays primes sieve-of-eratosthenes

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

如何让JOptionPane对话框显示为任务栏上的任务?

编辑:

问题遵循横向规则; 我自己的答案先于它.


Oscar Reyes的帮助下,我精心设计了这个解决方案:

import javax.swing.JOptionPane;
import javax.swing.JFrame;

public class MyApp extends JFrame {
    public static void main(String [] args) {
        new MyApp();
    }

    public MyApp() {
        super("MyApp");
        setUndecorated(true);
        setVisible(true);
        setLocationRelativeTo(null);
        String i = JOptionPane.showInputDialog(this, "Enter your name:", getTitle(), JOptionPane.QUESTION_MESSAGE);
        if(null != i) {
            JOptionPane.showInputDialog(this, "Your name is:", getTitle(), JOptionPane.INFORMATION_MESSAGE, null, null, i.concat(i));
        }
        dispose();
    }
}
Run Code Online (Sandbox Code Playgroud)

注意我也在JOptionPane.showInputDialog中显示输出.这样输出在文本字段中突出显示,因此我只需按CTRL+ C即可将输出复制到系统剪贴板,然后按下ESC以关闭应用程序.


我为我的琐碎应用程序创建了一个简单的GUI.我的应用程序提示单个输入a JOptionPane.showInputDialog,执行计算,然后用a显示单个输出JOptionPane.showMessageDialog.我有时会切换到最大化的浏览器窗口或其他要复制的内容,然后想切换回我的JOptionPane对话框进行粘贴.

我希望我的JOptionPane对话框显示为任务栏上的任务,因此我可以像几乎任何其他正在运行的程序一样切换到它.我更喜欢JOptionPane的简单性,而不是必须创建JFrame,FlowLayout,Icon,JTextField,JButton,ActionListener等等.

  • JOptionPane可以在任务栏上显示为任务吗?
  • 如果是这样,我该如何让它出现?
  • 如果没有,还有什么是单线的JOptionPane.show[whatever]dialog()吗?

java user-interface swing taskbar joptionpane

17
推荐指数
1
解决办法
9035
查看次数

作为没有项目管理的开发人员,避免范围蔓延的最佳方法

我是一家金融公司内部小型IT部门的开发人员,曾参与过许多项目管理很少或根本没有项目管理的中小型项目.这似乎总是导致范围蔓延,因此不能满足最后期限,并且必须牺牲良好的设计/代码以在短期内满足用户/管理者.

作为开发人员,我可以做些什么来确保在编写任何代码之前确定用户需求,并且考虑到用户/经理的需求和期望,任何变更请求都得到妥善管理.

谢谢.

project-management requirements scope-creep

14
推荐指数
2
解决办法
2367
查看次数