小编Mr.*_*irl的帖子

如何通过其属性获取枚举类型?

我写了一个枚举类,我想要按类型获取属性并获取type by属性,但似乎不可能.

public enum AreaCode {
    area1(7927),
    area2(7928),
    area3(7929);

    private final int ac;

    AreaCode(int ac) {
        this.ac = ac;
    }

    int areaCode(){
        return ac;
    }

    AreaCode area(int n) {
        switch (n) {
            case 7927: return AreaCode.area1;
            case 7928: return AreaCode.area2;
            case 7929: return AreaCode.area3;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码不会编译.如何area(int n)上班?

java enums

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

在Javascript中将Base64数据转换并插入Canvas

我得到一个数据缓冲区代表Base64中的图像.我得到的数据(代表base64中的图像)(部分数据)

193,109,51,74,182,71,212,38,78,62,211,48,81,145,244,39,244,250,215,192,113,46,101,136,203,149,44,6,90,147,197,215,109,66,251,69,47,138,111,202,43,239,122,45,108,125,22,6,149,44,84,103,136,198,74,212,41,171,203,188,187,69,121,183,255,0,7,75,156,191,140,190,45,181,219,141,43,195,214,107,30,129,3,145,38,110,60,135,185,35,130,119,4,108,244,238,0,227,3,140,86,85,237,134,149,241,3,69,158,251,71,134,93,31,88,211,72,82,1,30,100,76,70,65,12,9,12,141,207,94,184,32,140,215,45,47,196,111,130,177,187,34,120,79,197,65,84,224,8,175,93,20,99,176,31,107,24,250,96,85,141,47,227,159,195,111,11,219,223,46,133,225,175,17,91,73,120,170,178,189,196,137,49,96,185,218,50,247,44,64,27,155,167,173,123,252,61,144,97,242,8,63,102,156,234,207,227,169,43,115,77,245,230,119,122,111,104,173,23,78,167,204,103,121,165,108,217,46,88,184,40,124.....

成功解码.

现在我正在尝试将图像添加到我的画布而没有成功,如下所示:

function fillCanvasImage(x, y, width, height, image, pageID) {
    if (image == "")
        return;

    var canvas = document.getElementById("AppPmainCanvas" + pageID);

    if (canvas && canvas.getContext) {
        var context = canvas.getContext('2d');
        if (context) {
            context.clearRect(0, 0, canvas.width, canvas.height);
            var img = new Image();
            img.src = base64_decode(image);
            //img.onload = function () {
                context.drawImage(img, 0, 0, canvas.width, canvas.height);
            //}
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我将数据格式转换为base64:

function base64_decode(data) {
    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i = …
Run Code Online (Sandbox Code Playgroud)

javascript html5 canvas html5-canvas

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

ExtJS - 如何获取组件项值

我有一个组件如下:

{
    xtype: 'fieldcontainer',
    layout: 'hbox',
    id: 'article-level-container',
    defaultType: 'textfield',
    fieldDefaults: {
        labelAlign: 'top'
    },
    items: [{
        fieldLabel: 'LEVEL',
        name: 'artLevel',
        inputWidth: 216,
        margins: '0 5 5 0',
        allowBlank: false,
        fieldStyle: 'text-align: right; font-size: 13pt; background-color: #EAFFCC;'
    }, {
        fieldLabel: 'VALUE',
        name: 'artValue',
        inputWidth: 216,
        allowBlank: false,
        blankText: 'zorunlu alan, bo? b?rak?lamaz',
        fieldStyle: 'text-align: right; font-size: 13pt; background-color: #EAFFCC;',
        listeners: {
            change: function(textfield, newValue, oldValue) {
                if (oldValue == 'undefined' || newValue == '') {
                    Ext.getCmp('btnArticleSave').disable();
                } else {
                    Ext.getCmp('btnArticleSave').enable(); …
Run Code Online (Sandbox Code Playgroud)

javascript extjs

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

moment.js是表演后

我将我的日期转换为moment.js,现在我想将它与另一个日期(在这种情况下为'now')进行比较.

只是一个普通的比较约会对象似乎是很多比使用moment.js更快的isAfter功能.

  • 这个简单的比较是否适用于所有语言环境?
  • 我在这里错过了什么吗?
  • 是否有一个非常具体的原因为什么isAfter似乎创建一个新的时刻对象而不是当它是一个Date对象时采取快捷方式?

我的所有日​​期都是UTC.

function executeTests() {
  isAfterTest();
  compareTest();
}

function isAfterTest() {
  console.time('isAfterTest');

  var now = new Date();
  var dateOfBirth = moment('2000-01-01');

  for (var i = 0; i < 50000; i++) {
    var x = dateOfBirth.isAfter(now);
  }

  console.timeEnd('isAfterTest');
}

function compareTest() {
  console.time('compareTest');

  var now = new Date();
  var dateOfBirth = moment('2000-01-01');

  for (var i = 0; i < 50000; i++) {
    var x = dateOfBirth > now;
  }

  console.timeEnd('compareTest');
} …
Run Code Online (Sandbox Code Playgroud)

javascript momentjs

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

从LinkedHashMap构建有序的JSON字符串

我需要在我的插入顺序为键/值对,所以我选择了使用LinkedHashMapHashMap.但我需要将其LinkedHashMap转换为JSON字符串,其中字符串中的顺序LinkedHashMap保持不变.

但目前我通过以下方式实现:

  1. 首先将LinkedHashMap转换为JSON.
  2. 然后将JSON转换为字符串.

    import java.util.LinkedHashMap;
    import java.util.Map;
    
    import org.json.JSONObject;
    
    public class cdf {
        public static void main(String[] args) {
            Map<String,String > myLinkedHashMap =  new LinkedHashMap<String, String>();
            myLinkedHashMap.put("1","first");
            myLinkedHashMap.put("2","second");
            myLinkedHashMap.put("3","third");
    
            JSONObject json = new JSONObject(myLinkedHashMap);
            System.out.println(json.toString());
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)

输出是:

{"3":"third","2":"second","1":"first"} . 
Run Code Online (Sandbox Code Playgroud)

但我希望它按插入键的顺序,如下所示:

{"1":"first","2":"second","3":"third"}
Run Code Online (Sandbox Code Playgroud)

一旦我将其LinkedHashMap转换为JSON,它就会失去它的顺序(显然JSON没有顺序的概念),因此字符串也是乱序的.现在,我如何生成一个顺序与LinkedHashMap?相同的JSON字符串?

java string json hashmap linkedhashmap

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

如何检查字符串是否包含子字符串并在javascript中为其着色?

我必须创建:

  • 1 <input type="text">
  • 1 <textarea>
  • 1 <div>
  • 1 <button>

我必须填写divtextarea的内容,但如果内容中包含input的字符串,我有着色它<span>.

例如:

如果input包含"是"并且textarea包含"这是一个美好的一天",我应该在div "这是一个美好的一天"中添加以下文本并在每次出现"是"字符串时着色.

我应该使用indexOf()和循环.

我有这个:

var a = $("#inp1").val();
var b = $("#txt").val();

var x = b.indexOf(a);
    if (x > -1)
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

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

如何使用ExtJS 4.1增加VBOX中项目之间的间距?

所以我正在使用ExtJS 4.1.我有一个包含两个项目的视口.它们堆叠正确但我想在它们之间留出一些空间.边距似乎不起作用.

var required = '<span style="color:red;font-weight:bold" data-qtip="Required">*</span>';

Ext.onReady(function() {
    Ext.QuickTips.init();

    window.formPanel = Ext.widget({
        bodyPadding: '5 5 0',
        collapsible: false,
        defaultType: 'textfield',
        frame: true,
        id: 'formPanel',
        layout: 'form',
        renderTo: '',
        title: 'Spring Demo 3 (Lookup Transfer Request)',
        url: contextPath + '/users/ajax',
        width: 450,
        xtype: 'form',

        buttons: [{
            text: 'Check Status',
            scope: this,
            handler: function() {
                formPanel.getForm().submit({
                    success: function(res, req) {

                    }
                });
            }
        }],

        fieldDefaults: {
            msgTarget: 'side',
            labelWidth: 105
        },

        items: [{
            afterLabelTextTpl: required,
            allowBlank: false,
            fieldLabel: 'Username',
            name: …
Run Code Online (Sandbox Code Playgroud)

extjs4

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

使用Rickshaw JS库在X轴上显示自定义标签

我有一个成对的数据集,{x: someValue, y: count}其中someValue是一周中的某一天,形式为(1..7),其中1"星期日".在Ricskshaw图表上,我想分别在X轴上显示(Mon,Tue ..etc).我怎么做?

目前我做了:

var ticksTreatment = 'glow';
var xAxisQPerDay = new Rickshaw.Graph.Axis.Time( {
          graph: graphQPerDay,
          ticksTreatment: ticksTreatment
      } );
xAxisQPerDay.render();
Run Code Online (Sandbox Code Playgroud)

但这当然给了我默认值1s,2s,3s等......

javascript charts rickshaw

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

使用java和套接字的简单聊天程序

我在Java中使用套接字时遇到问题:服务器没有响应,也没有抛出异常.

服务器代码:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

class Server {
    public static void main(String args[]) {
        final int time = 75;
        //boolean CHAT_SESSION_ALIVE = false; 
        int port = 9999;

        try {
            System.out.println("Starting chat server using the port : " + port);
            ServerSocket srvr = new ServerSocket(port);
            Socket skt = srvr.accept();
            System.out.println("Server has connected with client         " + skt.getInetAddress());
            //CHAT_SESSION_ALIVE = true;

            PrintWriter out = new PrintWriter(skt.getOutputStream(), true);
            BufferedReader in = new BufferedReader(new InputStreamReader(skt.getInputStream())); …
Run Code Online (Sandbox Code Playgroud)

java

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

用于分组对象的算法

我有以下课程:

class Sport {
    private String sportsName;
    private List<People> peopleWhoPlayThisSport;
    //...
}
Run Code Online (Sandbox Code Playgroud)
class People {
    private String name;
    private long uniqueId;
   // ...
}
Run Code Online (Sandbox Code Playgroud)

我的输入是运动对象列表,为简单起见,请考虑以下示例:

sport1 - Football,   <Sam, Dylan>
sport2 - Basketball, <Tyler, John>
sport3 - Baseball,   <Carter, Dylan>
sport4 - Hockey,     <Kane, Michael>
sport5 - Soccer,     <Carter, Frank>
Run Code Online (Sandbox Code Playgroud)

我必须创建一个List<List<>>,这样内部列表就是所有具有至少一个普通玩家的体育项目(此处适用传递属性).在上面的例子中,输出应该是,

<<sport1,sport3,sport5> , <sport2> , <sport4>>
Run Code Online (Sandbox Code Playgroud)

有关解决此问题和/或伪代码的任何建议吗?

java algorithm grouping

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