小编Mat*_*all的帖子

用Python计算日期

我试图用1950年的1950 - 2050年每周五的星期五数量计算(我知道,有点晚了).我不熟悉任何日期/日历包使用.有什么想法吗?

python calendar date

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

在内部类中使用泛型参数时Java编译失败

请查看下面的代码段:

interface IFoo<E>{
    void doFoo(E env);
}

class A<E>{
    public void doA(E env){}
}

public class Foo<E> implements IFoo<E>{
    public A<E> a;

    @Override
    public void doFoo(E env) {
        a.doA(env);
    }

    private class FooInner<E> implements IFoo<E>{

        @Override
        public void doFoo(E env) {
            a.doA(env);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Eclipse在私有内部类中抱怨a.doA(env)以下消息.

The method doA(E) in the type A<E> is not applicable for the arguments (E)
Run Code Online (Sandbox Code Playgroud)

它似乎不像可访问性问题,因为非静态内部类可以访问outter类的所有实例变量.看起来我在某处定义了我的泛型错误.谁能解释一下我在这里做错了什么?

java generics inner-classes

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

在构造函数中自动调用超类方法

在C#中是否有一种方法可以保证每个子类构造函数都会自动调用超类的方法?

具体来说,我正在寻找一种只向超类添加代码的解决方案,所以不是"base(arguments)"

.net c#

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

java正则表达式到底是什么?我是否误解了正则表达式文档的完整性?

System.out.println("a".matches("^[A-Za-z]+"));
System.out.println("a ".matches("^[A-Za-z]+"));
Run Code Online (Sandbox Code Playgroud)

这给了我:

true
false
Run Code Online (Sandbox Code Playgroud)

到底是什么?据我所知,"[A-Za-z]"包含"a","+"表示一个或多个,所以这似乎可以起作用,至少在这个宇宙中......

细节是:

Mac OS X 10.8.4

$ java -version
java version "1.6.0_51"
Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)
Run Code Online (Sandbox Code Playgroud)

也许我写的perl太长了,java的正则表达式系统有点像但不是吗?不知道.

java regex

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

如何在文件中使用for循环在Python中工作?

我有这段代码

f = open('textfile.txt', 'r')
for line in f:
    print line
Run Code Online (Sandbox Code Playgroud)

我只想说textfile.txt是这样的

1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

这是如何运作的?它是如何知道文件中的位置的?我知道它是一遍又一遍地打印,但为什么不一遍又一遍地打印整个文件.我不知道f是一个范围.我还假设它知道停在EOF?

python python-2.7

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

如何将对当前网站中的服务器控件的引用添加到 web.config

我扩展了服务器控件(不是用户控件)并将代码放在我的 app_code 文件夹中。我想在网络配置中添加标签前缀,但是

<add tagPrefix="cc1" namespace="mynamespace" />
Run Code Online (Sandbox Code Playgroud)

<add tagPrefix="cc1" namespace="mynamespace" assembly="currentwebsitename" />
Run Code Online (Sandbox Code Playgroud)

不工作。我收到此错误:错误 147 未知服务器标记“cc1:Control”

asp.net custom-server-controls web-config

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

如何为GlassFish声明数据源?

我知道如何使用JBoss执行此操作:创建一个*-ds.xml文件,并将其放入我的deploy目录中.

  • 是否有一种声明性的方式来对GlassFish(v3.1)做同样的事情?
  • 我是否以错误的方式思考这个问题?(见下一个问题)
  • 是否有更多的Glassfishy方法让我的Java EE应用程序与数据库通信?

其他潜在的信息:

  • 我想连接到SQL Server 2008数据库
  • 我正在使用Eclipse + GlassFish Server Tools
  • 我对GlassFish几乎一无所知.我对JBoss更熟悉

jdbc glassfish

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

为什么JSON结果在此JavaScript中"未定义"

我有一些问题让我的JS正常工作.我试图从下拉列表中选择一个选项,然后调用此函数.正确调用该函数(类型设置为'truck',id设置为5).我想然后使用返回的数据来填充几个字段.我添加到测试中的alert()给了我"undefined".

这是我的JS:

 function getDueDates(type, id) {
     $.getJSON("loadVehicle.php",
     {
         id: id,
         type: type
     },
         function(data) {            
            alert( "TEST: " + data.year);
             $("#inspection_due").val(data.inspection_due);
             $("#short_due").val(data.short_due);
             $("#full_due").val(data.full_due);
         }
 )};
Run Code Online (Sandbox Code Playgroud)

当我手动检查loadVehicle页面(id = 5,type = truck)时,我得到:

[{"truck_id":"5","status":"A","truck_number":"21","year":"1999","make":"Freightliner","model":"Classic","engine":"Detroit","vin_number":"1FUPCSZB2XPA16977","transmission_number":"","tire_size":"","inspection_due":"2009-04-30","short_due":"0000-00-00","full_due":"0000-00-00","comments":"Caf Inc Truck","web_id":"b963940bfd96528f7fd57c08628221f0","last_update":"2009-03-09 16:26:28"}]
Run Code Online (Sandbox Code Playgroud)

但是在页面中警报出现"TEST:undefined"

javascript jquery json

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

ANSI C中的字符串

这是C语言的第三个程序.该程序是为了演示字符串概念.

从研究中我知道字符串在其末尾有一个空字符'\ 0'来终止字符串.

我写了那段代码:

main()
{
      char  name[8];

      strcpy(name, "Mahmoud");
      printf("The contents of name are %s\n", name);
      getchar();
}
Run Code Online (Sandbox Code Playgroud)

在这段代码中,我声明了char类型的数组以保存字符串.我的名字"Mahmoud"是7个字符,我声明大小为8的名称,"Mahmoud"为7,"\ 0"为1,它正常工作.

但是在以下代码中:

main()
{
      char  name[8];

      strcpy(name, "MahmoudEmam");
      printf("The contents of name are %s\n", name);
      getchar();
}
Run Code Online (Sandbox Code Playgroud)

当我显示名称时,输出是"MahmoudEmam",虽然名称的大小是8.

它是怎么做的?

c

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

在一个间隔上运行一个while循环

我正在建立一个非常注重物理学的游戏.因此我需要游戏以非常特定的间隔运行.当前代码:

public double period = .02; //this is the run interval in seconds

//main gameLoop
public void gameLoop(){
    long startTime;
    long sleep;

    while(running){
        startTime = System.nanoTime();

        Graphics2D g = s.getGraphics();
        operateEntities(g);
        g.dispose();
        s.update();
        //figure out how long it must sleep to take .02s altogether
        sleep = ((int)(period*1000) - (System.nanoTime() - startTime)*100000);
        try{
            if(sleep > 0){
                Thread.sleep(sleep);
            }else{
                System.err.println("Warning: program runtime exceeded period");
            }
        }catch(Exception ex){}

        gameTime += period;
    }
}
Run Code Online (Sandbox Code Playgroud)

这没有按预期工作.目前主线程正在执行而根本没有休眠,并且"警告:程序运行时超出期限"警告正在触发.

以前我使用System.currentTimeMillis(),但它不够准确,所以我切换到System.nanoTime()

增加周期实际上可以加速程序,同时减少它会减慢程序.

有一个简单的逻辑faw?是我对System.nanoTime()的理解了吗?或者是否有更好的方法来运行特定时间间隔上的方法operateEntities,dispose和update?

编辑:为了记录,该程序不需要超过.02s完成.它已经过测试

java

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