小编sha*_*era的帖子

实例化内部类

我正在研究过度散列hashCode和equals方法的示例问题,但是得到一个错误:" 没有可以访问CustomHashCodeExample类型的封闭实例.必须使用CustomHashCodeExample类型的封闭实例来限定分配(例如,xnew A(),其中x是一个实例of CustomHashCodeExample). "我写了一个内部类HashPerson,当我试图在另一个名为testHashCodeOverride()的方法中实例化这个内部类时,我收到了这个错误.

public static void testHashCodeOverride(){   
    System.out.println("\nTest HashCode Override Method");
    System.out.println("==================================\n");

    HashPerson william = new HashPerson("willy");
    HashPerson bill = new HashPerson("willy");          
}
Run Code Online (Sandbox Code Playgroud)

这段代码工作正常,即使我没有看到静态内部类或外部类的实例化,困惑:(

public class HashCodeExample {

    public static void testHashCodeOverride() {

        HashPerson william = new HashPerson("Willy");
        HashPerson bill = new HashPerson("Willy");
        System.out.println("Hash code for william  = " + william.hashCode());
        System.out.println("Hash code for bill     = " + bill.hashCode());

        HashMap table = new HashMap();
        table.put(william, "Silly");

        if (table.containsKey(william)) {
            System.out.println(table.get(william));
        } else {
            System.out.println("Key " + william + …
Run Code Online (Sandbox Code Playgroud)

java inner-classes

45
推荐指数
2
解决办法
7万
查看次数

使用Mockito模拟Joda DateTime方法

我想millis返回指定的值.

public long myMethod(){
    DateTime nowDateTime = new DateTime(DateTimeZone.UTC);
    long millis = nowDateTime.getMillis();
    System.out.println(millis);
}
Run Code Online (Sandbox Code Playgroud)

我试了这个没有运气.

@RunWith(PowerMockRunner.class)
@PrepareForTest({ DateTime.class })
@PowerMockIgnore({ "javax.crypto.*", "javax.management*" })
...
...
public void testMyMethod(){
    DateTime nowDateTime = PowerMockito.mock(DateTime.class);
    Mockito.when(nowDateTime.getMillis()).thenReturn(10L);
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

java mockito powermock

9
推荐指数
1
解决办法
6969
查看次数

在Hive/SQL中获取具有最大值的行?

我是Hive/SQL的新手,我遇到了一个相当简单的问题.我的数据如下:

+------------+--------------------+-----------------------+
| carrier_iD |     meandelay      |     meancanceled      |
+------------+--------------------+-----------------------+
| EV         | 13.795802119653473 | 0.028584251044292006  |
| VX         | 0.450591016548463  | 2.364066193853424E-4  |
| F9         | 10.898001378359766 | 0.00206753962784287   |
| AS         | 0.5071547420965062 | 0.0057404326123128135 |
| HA         | 1.2031093279839498 | 5.015045135406214E-4  |
| 9E         | 8.147899230704216  | 0.03876067292247866   |
| B6         | 9.45383857757506   | 0.003162096314343487  |
| UA         | 8.101511665305816  | 0.005467725574605967  |
| FL         | 0.7265068895709532 | 0.0041141513746490044 |
| WN         | 7.156119279121648  | 0.0057419058192869415 | …
Run Code Online (Sandbox Code Playgroud)

sql hive

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

Java对象序列化嵌套对象

我正在研究 Java 中的序列化,当时我遇到了保存不可序列化且在要序列化的类(实例变量)中引用的对象的状态。在下面的代码中,我有类 Dog(可序列化),它引用了类 Collar(不可序列化);它又引用了 Color 类(不可序列化)。尽管尝试了所有可能性,我还是收到错误。这是我想出的最新代码:

class Color {
    private String colorName;

    public String getColorName() {
        return colorName;
    }

    public void setColorName(String colorName) {
        this.colorName = colorName;
    }

    Color(String color) {
        this.colorName = color;
    }
}

class Collar {

    private Color color;
    private int size;

    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }

    public Color getColor() {
        return color;
    }

    public void setColor(Color color) {
        this.color = color;
    }

    Collar(int size, …
Run Code Online (Sandbox Code Playgroud)

java serialization object

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

杰克逊将字段序列化为其他名称

我有这个JSON反序列化:

{
    "first-name": "Alpha",
    "last-name": "Beta",
    "gender": "m"
}
Run Code Online (Sandbox Code Playgroud)

我想将其序列化为2种不同的格式:

[一种]

{
    "first-name": "Alpha",
    "last-name": "Beta",
    "gender": "m"
}
Run Code Online (Sandbox Code Playgroud)

[B]

{
    "firstName": "Alpha",
    "lastName": "Beta",
    "gender": "m"
}
Run Code Online (Sandbox Code Playgroud)

我能够将其序列化为1种格式:仅[A]或[B]。这是将其序列化为[B]的代码:

public String firstName;
public String lastName;
public String gender;

@JsonProperty("firstName")
public String getFirstNameCC() {
    return firstName;
}

@JsonProperty("first-name")
public void setFirstNameD(String firstName) {
    this.firstName = firstName;
}

@JsonProperty("lastName")
public String getLastNameCC() {
    return lastName;
}

@JsonProperty("last-name")
public void setLastNameD(String lastName) {
    this.lastName = lastName;
}

public String getGender() {
    return gender; …
Run Code Online (Sandbox Code Playgroud)

java serialization json jackson

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

SQL SERVER - Concat NULL数字列

我有这张桌子

CREATE TABLE [name].[tblRange] 
(
  [RangeId_PK] numeric(6, 0) IDENTITY(1, 1) NOT NULL,
  [Lower] numeric(18, 2) NOT NULL,
  [Upper] numeric(18, 2) NULL
)
Run Code Online (Sandbox Code Playgroud)

我想连接Lower和Upper但是如果Upper包含NULL值,它总是给我NULL.

这是我的查询:

SELECT CAST(Lower AS VARCHAR(50)) + '-' + CAST(Upper AS VARCHAR(50))
FROM name.tblRange
Run Code Online (Sandbox Code Playgroud)

我不能使用以下查询,因为它会给出此错误(SQL Server Database Error: Error converting data type varchar to numeric.)

SELECT CAST(Lower AS VARCHAR(50)) + '-' + CAST(ISNULL(Upper, '') AS VARCHAR(50))
FROM name.tblRange
Run Code Online (Sandbox Code Playgroud)

请注意我不能使用,ISNULL(Upper, 0)因为这是一个上限(不能为0).

我该如何解决这个问题?

sql sql-server

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

使用javascript更改元素的类

我很难根据select标签中的选定项目更改元素类.这是我的代码:

<table> 
    <tr>
        <select onchange="wow(this.value)">
            <option value="a">a</option>
            <option value="b">b</option>            
        </select>
    </tr>               
    <tr id="x" class="show">
        x
    </tr>
</table>

<script>
function wow(value){
    switch(value){
        case "a": document.getElementById("x").className = "show"; break;       
        case "b": document.getElementById("x").className = "hide"; break;
    }
}
</script>

<style>
.show{
    display:inline-block;
}

.hide{
    display:none;
}
</style>
Run Code Online (Sandbox Code Playgroud)

我在这里没有看到任何问题.我也试过setAttribute("class", "show")但不行.

javascript html-select onchange

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

如何只选择工作日

我有 2 列,日期和价格。输入将是 2 个不同的日期,我想获取它们之间的日期和价格(仅限工作日,无需考虑周末)。如何在 SQL 中进行此查询?我真的不知道,谢谢。

mysql

-1
推荐指数
1
解决办法
1586
查看次数