小编Pra*_*ate的帖子

为什么String switch语句不支持null case?

我只是想知道为什么Java 7 switch语句不支持一个null案例而是抛出NullPointerException?请参阅下面的注释行(示例摘自Java Tutorials文章switch):

{
    String month = null;
    switch (month) {
        case "january":
            monthNumber = 1;
            break;
        case "february":
            monthNumber = 2;
            break;
        case "march":
            monthNumber = 3;
            break;
        //case null:
        default: 
            monthNumber = 0;
            break;
    }

    return monthNumber;
}
Run Code Online (Sandbox Code Playgroud)

这样可以避免if在每次switch使用之前进行空检查的条件.

java language-design switch-statement

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

Mongoose.model vs Connection.model vs Model.model

我对mongoosejs中模型的使用感到困惑

可以使用mongoose以这些方式创建模型

使用Mongoose

var mongoose = require('mongoose');
var Actor = mongoose.model('Actor', new Schema({ name: String }));
Run Code Online (Sandbox Code Playgroud)

使用连接

var mongoose = require('mongoose');
var db = mongoose.createConnection(..);
db.model('Venue', new Schema(..));
var Ticket = db.model('Ticket', new Schema(..));
var Venue = db.model('Venue');
Run Code Online (Sandbox Code Playgroud)

使用现有的Model实例

var doc = new Tank;
doc.model('User').findById(id, callback);
Run Code Online (Sandbox Code Playgroud)

现在返回的模型之间有什么区别Mongoose.model,Connection.model和Model.model.何时使用什么,创建/获取模型的推荐方法是什么?

mongoose mongodb node.js odm

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

mathematica中的命令完成:建议规则/选项

在当前版本的Mathematica中,这些键盘快捷键非常方便

Ctrl+K 完成当前命令

GraphPl -> press Ctrl+K  -> GraphPlot
Run Code Online (Sandbox Code Playgroud)

Ctrl+Shift+K完成当前命令并添加可以用tabkey 替换为实际值的参数占位符

GraphPl -> press Ctrl+Shift+K  ->  GraphPlot[{vi1->vj1,vi2->vj2,...}]
Run Code Online (Sandbox Code Playgroud)

但是,我找不到任何键盘选项来显示相关的设置/选项

例如说如果我需要绘制具有不同布局的图形,我知道我需要使用其中一个可能的设置来设置方法

  • "CircularEmbedding"
  • "RandomEmbedding"
  • "HighDimensionalEmbedding"
  • "RadialDrawing"
  • "SpringEmbedding"
  • "SpringElectricalEmbedding"

两件事情

首先如何自动完成这些选项,是否有快捷键?

GraphPlot[sg, Method -> <what keyboard shortcut to display all possible options>]
Run Code Online (Sandbox Code Playgroud)

其次,如何以list编程方式生成以下PopupMenu

  list={
   "CircularEmbedding"
   , "RandomEmbedding"
   , "HighDimensionalEmbedding"
   , "RadialDrawing"
   , "SpringEmbedding"
   , "SpringElectricalEmbedding"
   }
Manipulate[GraphPlot[sg, Method -> m], {m, list}, ControlType -> PopupMenu]
Run Code Online (Sandbox Code Playgroud)

有没有办法反省Mathematica函数和访问方法元数据类似于在其他编程语言中可以完成的方式,比如在Java中使用反射?

reflection wolfram-mathematica keyboard-shortcuts

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

列表的顺序子集

给出一个列表说

{"a", "b", "c", "d"}
Run Code Online (Sandbox Code Playgroud)

是否有更简单的方法来生成这样的顺序子集列表(结果的顺序并不重要)

{
 {"a"},
 {"a b"},
 {"a b c"},
 {"a b c d"},
 {"b"},
 {"b c"},
 {"b c d"},
 {"c"},
 {"c d"},
 {"d"}
}
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica

11
推荐指数
4
解决办法
783
查看次数

如何编写泛型方法来查找最大元素并调用该方法?

当我试图通过泛型教程Q&A解决练习时,我的答案略有不同

我的答案

public static <T extends Comparable<? super T>>
    T max(List<? extends T> list, int begin, int end) //Option1

public static <T extends Comparable<T>>
    T max(List<? extends T> list, int begin, int end) //Option2
Run Code Online (Sandbox Code Playgroud)

从下面引用的答案

所以我的问题是

  • 选项1:如果T extends Object & Comparable<? super T>替换为,会有什么不同吗T extends Comparable<? super T>?不extends Object隐含?

  • 选项2:如果Comparable<? super T>替换为它会有什么不同Comparable<T>吗?如果是这样?

  • Eclipse代码完成List<? extends Comparable<? super Comparable<? super T>>> list;在Ctrl + 1上创建局部变量,max(list, 1, 10); …

java generics list

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

如何从其他包中的类访问包私有类?

我有以下课程

Hello.java

package speak.hello;

import java.util.Map;

import speak.hi.CustomMap;
import speak.hi.Hi;

public class Hello {

    private Hi hi;

    Hello(Hi hi) {
        this.hi = hi;
    }

    public String sayHello() {
        return "Hello";
    }

    public String sayHi() {
        return hi.sayHi();
    }

    public Map<String, Object> getMap() {
        return hi.getMap();
    }

    public void clearMap() {
        hi.getMap().clear();
    }

    public void discardMap() {
        CustomMap map = (CustomMap) hi.getMap();
        map.discard();
    }

    public static void main(String[] args) {
        Hello hello = new Hello(new Hi());
        System.out.println(hello.sayHello());
        System.out.println(hello.sayHi());
        System.out.println(hello.getMap());
        hello.clearMap();
        System.out.println("--"); …
Run Code Online (Sandbox Code Playgroud)

java access-specifier

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

如何分成字符组?

我想拆分字符串

"abcdefgh"
Run Code Online (Sandbox Code Playgroud)

至

"ab","cd","ef","gh"
Run Code Online (Sandbox Code Playgroud)

使用javascript split()

"abcdefgh".split(???)
Run Code Online (Sandbox Code Playgroud)

你能帮忙吗?

javascript regex split

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

如何在图形中找到最大度数的所有顶点?

给出一个图表,比方说

g = Graph[{x -> a, y -> c, a -> b,
           b -> c, a -> c, d -> c,
           a -> d, b -> d},
      VertexLabels -> "Name"] 
Run Code Online (Sandbox Code Playgroud)

G

如何在图形中找到具有最大度数的所有顶点,即具有最多边数的所有顶点的列表,并在图形中突出显示它们?

在这种情况下,它将是顶点{a,c}.

wolfram-mathematica

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

Spring框架default-lazy-init所有bean

是否有一个spring属性来lazy-init弹出框架加载的所有bean?

我知道这些属性

 - lazy-init="true"
 - default-lazy-init="true"
Run Code Online (Sandbox Code Playgroud)

但是有多个spring config xml文件,有些是在jar中打包的,所以不能自由改变<bean>和<beans>标签.

通过配置解决这个问题的任何其他方法?或以编程方式?

spring lazy-loading javabeans

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

如何捕获运行时html内容/状态,应用所有样式并删除javascript

更短版本的问题

有没有办法捕获运行时html(当前状态的dom)与所有样式应用/内联动态(ajax/javascript)网页?


更长的版本

我想要做的是将当前dom状态保存为单个html页面,所有样式都包含在<style>应用的标签中或内联样式.

类似地,我需要的是一些类似于coredump文件(它提供当前应用程序状态)的东西,但在这种情况下是一个(html)文件,可以加载到borwser中进行查看/调试.

如果页面中没有javascript,则此任务非常简单.

  • 不要File->Save Page As -> html complete从Web浏览器
  • 或者使用http://www.httrack.com或curl 等工具下载页面和所有链接的图像

下面以高级别列出了以编程方式执行相同操作的方法(尽管不是完整的解决方案)

  • 获取HTML内容
  • 从onclick中删除所有标签和onXXX属性
  • 获取*.css内容
  • 在内部嵌入CSS样式 <style>
  • 将所有图像路径更改为相对
  • 保存所有图像

但是当javascript用于构建页面或者如果页面状态在加载/单击时被更改,就像某些元素被隐藏并且页面布局被更改,则无法使用上述方法.

那么如何保存(启用动态javascript)网页的当前状态?

如果存在这样的方法/工具/插件,那么通过电子邮件/与无法访问互联网或Web应用程序的人共享页面将非常方便

html javascript java browser browser-addons

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