小编MxL*_*evs的帖子

访问SQL:IFF功能

我之前没有使用过访问权限,但是我必须将访问查询转换为SQL,这样我才能用水晶编写一个报告.

查询当前在其select语句中使用IFF函数,该函数似乎根据表的特定列的值确定将返回的值.

因此,例如,如果值为"CR",则应将其作为"信用"返回,如果为"NCR",则应将其作为"非信用"返回

我可以在SQL中做这样的事吗?

sql oracle plsql

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

在逐位代数中求解未知数

假设我有3个字节,XY和Z.

X XOR Y导致Z.

我知道X和Z是什么,但我不知道Y是什么,所以我正在编写一个快速的脚本来解决这个问题.

虽然,我不知道我怎么会开始.我手工做了几个,这只是逐个比较每个位的问题,但我怎么能在python中做到这一点?我解决Y的程序似乎不够明确.

因为我只需要实际使用这样的东西,所以写它或者只是使用能为我做这件事的东西就足够了.

python bitwise-xor

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

在struct.pack中使用*args

我刚刚阅读了python中的*args和**kwargs表示法,并决定将它与我使用struct.pack的函数一起使用:

def pack_floats(*args):

   return struct.pack('%df' %len(args), args)

但是,当然,它不起作用,因为args是一个元组.如果我想要打包三个号码,我会打电话给这个号码

struct.pack('3f', 1, 2, 3)

或者,我可以通过循环运行它并一次打包一个数字,但我不知道一次一个值与一次所有值之间是否存在任何性能差异.

有没有办法编写pack_floats函数而不在循环中调用pack函数?

python function variadic-functions

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

展平目录

假设以下目录结构

my_script.bat
Dir1
   File1.txt
Dir2
   Dir3
      File1.txt
Run Code Online (Sandbox Code Playgroud)

我想压扁它,以便我只有一个目录,其中每个文件名都以当前目录(我的批处理文件所在的位置)下面的所有父目录作为前缀.

如此扁平化以上列表会产生类似的东西

Dir1-File1.txt
Dir2-Dir3-File1.txt
Run Code Online (Sandbox Code Playgroud)

或者只是某种方式来识别它来自哪个文件夹,不一定必须连字符.

这可以用Windows批处理文件完成吗?或者也许已经有了它的命令?

batch-file

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

什么时候多线环体不需要花括号?

为什么这段代码表现正常?我被告知多行循环体应该总是有花括号

public class Sample {

    public static void main(String[] args)
    {
        int[] nums = {1,2,3,4,5,6,7,8,9,10};

        // print out whether each number is
        // odd or even
        for (int num = 0; num < 10; num++)
            if (num % 2 == 0)
                System.out.println(num + " is even");
            else
                System.out.println(num + " is odd");
    }
}
Run Code Online (Sandbox Code Playgroud)

java

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

使用`nodeChanged`更新树节点是否合适?

我有一个JTree和一个JTextField。当我在树上选择一个节点时,文本字段将显示该节点的值。然后,我可以编辑文本并将其保存以更改所选节点的值。我使用DefaultTreeModelnodeChanged方法来更新树。

这是告诉树模型更新其节点的正确方法吗?在我看来,这很丑陋,因为我明确地访问了树的模型并告诉它发生了什么事。

这是一些代码

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JTree;
import javax.swing.ScrollPaneConstants;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;

public class TextPaneTest extends JFrame {

    private JTextField textBox = null;
    private JTree tree = null;
    private JButton button = null;

    public static void main(String args[]) {
        new TextPaneTest();
    }

    public TextPaneTest() {

        // Main panel
        JPanel panel = new JPanel();
        panel.setLayout(new BorderLayout()); …
Run Code Online (Sandbox Code Playgroud)

java swing jtree

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

根据国家/地区代码规范化电话号码

我有一个电话号码和一个与之相关的ISO国家代码.例如,加拿大的CA,美国的CA,英国的GB.

电话号码可能不仅包含区号和手机号码.

libphonenumber 在给定国家代码的情况下,提供确定电话号码是否有效的功能,因此我认为应该有一种方法来规范化它.

图书馆是否提供了一种方法让我将其转换为一个能够正确分隔拨号代码,区号和电话号码本身的对象?例如:给定形式的英国电话号码+44 20 xxxx xxxx,我希望它分开4420xxxx xxxx

我看到了一些规范化方法,但它们只是删除了连字符,圆括号和空格等字符.

java libphonenumber

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

使用枚举访问静态变量

存在一个定义一组常量的类

public class CritterCode {

    public static String KITTY = "KT";
    public static String PUPPY = "PP";
}
Run Code Online (Sandbox Code Playgroud)

我创建了一个将在组合框中使用的枚举.

public enum Critter {
   KITTY,
   PUPPY
}
Run Code Online (Sandbox Code Playgroud)

鉴于Critter,我想获得相应的CritterCode.

是否可以在不编写重复代码的情况下完成此操作?

java enums

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

大写连字符名称

我正在使用WordUtils来自Apache Commons的信息来正确规范人们的姓名。例如,

AnGEl lEe -> Angel Lee
Run Code Online (Sandbox Code Playgroud)

而且效果很好。现在,我提出的测试用例之一是带连字符的名称。通常,连字符的每个部分都有首字母大写,因此我希望

AnGeL lEe-YaNG --> Angel Lee-Yang
Run Code Online (Sandbox Code Playgroud)

但是,使用我现有的只调用capitalizeFully结果的方法

Angel Lee-yang
Run Code Online (Sandbox Code Playgroud)

如何才能做到这一点?

java

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

如何将字符串数组存储在内存中

我正在尝试查看当我有大量重复字符串时使用了多少内存.我正在使用这个答案中突出显示的方法(在底部)

这是我创建一个包含一千万个字符串的列表,其中每个字符串只有几个字符.

public class Test1 {

    public static void main(String[] args) {
        int count = 10000000;
        List<String> names = new ArrayList<String>();
        for (int i = 0; i < count; i++) {
            names.add("test");
        }
        Runtime rt = Runtime.getRuntime();
        long usedMem = rt.totalMemory() - rt.freeMemory();
        System.out.println(usedMem / (1024*1024) + " MB");
    }
}
Run Code Online (Sandbox Code Playgroud)

我运行它,它说88 MB.我不太确定这代表什么,但我会把它作为一个数字来比较.

这是我再次进行相同的测试,除了我用一些lorem ipsum文本替换了小字符串

public class Test1 {

    public static void main(String[] args) {
        int count = 10000000;
        List<String> names = new ArrayList<String>();
        for (int i = …
Run Code Online (Sandbox Code Playgroud)

java

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