小编JDe*_*age的帖子

小Schemer eqlist?功能 - 备用版本?

我正在阅读"Little Schemer"一书,并完成各种功能.一般来说,我最终得到与书籍相同的版本,但不是eqlist ?,这是一个测试两个列表相等的函数.

我已经尝试过测试我的版本,它会传递任何我抛出的东西.然而它与"Little Schemer"版本略有不同,我希望有人对我是否遗漏某些东西持有意见 - 我怀疑是这样的.

我的版本:

(define eqlist?
  (lambda (list1 list2)
    (cond
      ((and (null? list1)(null? list2))#t)
      ((or (null? list1)(null? list2))#f)
      ((and (atom? list1)(atom? list2))(eqan? list1 list2))
      ((or (atom? list1)(atom? list2)) #f)
      (else
        (and(eqlist? (car list1) (car list2))
            (eqlist? (cdr list1) (cdr list2)))))))
Run Code Online (Sandbox Code Playgroud)

这本书的版本:

(define eqlist2? ;This is Little Schemer's version
  (lambda (list1 list2)
    (cond
      ((and (null? list1)(null? list2)) #t)
      ((or (null? list1)(null? list2)) #f)
      ((and (atom? (car list1))(atom? (car list2)))
       (and (eqan? (car list1)(car list2))(eqlist2? (cdr list1)(cdr list2)))) …
Run Code Online (Sandbox Code Playgroud)

scheme the-little-schemer

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

Java - 什么是"@Override"用于?

可能重复:
java中有什么"@Override"?

到目前为止,我从来没有在方法之前放置"@Override".我看到了一些代码示例,但我不明白它的实用性.我喜欢一些解释.

非常感谢,

JDelage

java syntax overriding

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

如何理解behvior是否会在Java中使用静态或动态绑定?

我在低级别了解静态(编译时)和动态(运行时)绑定是什么.

我在某种程度上理解为什么知道这一点很重要(例如,仿制上解决泛型有助于解释你能做什么和不做什么等等).

我不明白为什么选择是以某种方式进行的 - 例如,Java对重载方法使用静态绑定,对重写方法使用动态绑定.这是为什么?它是一种设计选择吗?对于理解Java深层功能的人来说,这是一个显而易见且不可避免的事情,还是需要学习(而不是理解)的东西?

java language-design

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

当用于2个不兼容的类时,为什么`instanceof`错误而不是返回`false`?

我正在读这个:http:
//java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.20.2

他们说:

考虑示例程序:

class Point { int x, y; }
class Element { int atomicNumber; }
class Test {
        public static void main(String[] args) {
                Point p = new Point();
                Element e = new Element();
                if (e instanceof Point) {       // compile-time error
                        System.out.println("I get your point!");
                        p = (Point)e;           // compile-time error
                }
        }
}
Run Code Online (Sandbox Code Playgroud)

instanceof表达不正确,因为没有的实例Element或它的任何可能的亚类(没有在这里示出)的可能可能是任子类的实例Point.

为什么这会导致错误,而不是简单地instanceof返回false?

谢谢,

JDelage

java inheritance instanceof

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

默认的mb_internal_encoding()值来自哪里?

如果我要写一个新的php文件,并包含echo "current mb_internal_encoding: ".mb_internal_encoding(),输出值将来自哪里?如何"决定"/它是如何治理的?

背景:我写了一个网络应用程序,我认为我已经完成了将整个网站设置为utf-8所做的一切,并发现我仍需要手动设置此值...

php unicode localization

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

在Windows XP下编写和编译C程序?

这是一个绝对的初学者的问题,但根据最新的播客,我明白没有问题太新手了.

我有0编程经验,我想学习C,所以我开始学习K&R.我正在使用Windows XP笔记本电脑,我打算使用Notepad ++进行编写,使用Code :: Blocks进行编译.

这是我的问题:一旦我在Notepad ++中编写了"hello world"程序,我应该如何保存,编译和运行它?

编辑和新问题:当我从Code :: Blocks构建和运行时,我得到带有"hello world"消息的提示窗口.它一直打开,直到我手动关闭它.但是,当我双击.exe文件时,提示只是闪烁并消失,为什么呢?

非常感谢,

JD

编辑:根据这里的建议,我将使用Code :: Blocks作为IDE.

c

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

在国际象棋编程中很好地使用递归?

作为家庭作业的一部分,我必须用Java编写一个简单的国际象棋游戏.我想借此机会尝试递归,我想知道在国际象棋中是否有明显的候选递归代码?

java recursion chess

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

如何将排序顺序添加到表示多对多关系的MySQL闭包表中?

这是我的问题的后续问题:
如何在MySQL中实现多对多层次结构
,这里:
如何在MySQL 中记录顺序的记录集合.

简而言之,我想在MySQL中实现一个食谱表和另一个指令.配方是一系列连续的指令或其他配方.例如,您可以想象一个Peach_preserve配方,一个Peach_tart使用该配方,以及Peach_preserve一系列其他步骤(说明). Peach_preserve可以用于许多其他食谱.

我读过Bill Karwin关于闭包表的博客文章,我认为这个解决方案最能解决我的挑战(我的层次结构是多对多的,步骤是顺序的).所以例如我会:

recipe
id  name
1   Peach preserve
2   Cubed peeled peaches
3   Fresh peaches
4   Powdered sugar
5   Cook together
6   Peel and cut in chunks
7   Mix

step (or instruction)
id  desc
1   Cook together
2   Buy peaches
3   Buy sugar
4   Peel and cut in chunks
5   Mix

recipe_instruction
(Ancestor) (Descendant)
recipe_id  step_id   depth  descendant_is_instruction
3          3 …
Run Code Online (Sandbox Code Playgroud)

mysql hierarchical-data

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

在MySQL模式中,"AUTO_INCREMENT = 3"的含义是什么

这是MySQL表创建的模式.AUTO_INCREMENT=3最后一行是什么意思?

CREATE TABLE IF NOT EXISTS `test_b` (
  `ID_b` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `stuff` varchar(1000) COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`ID_b`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=3 ;
Run Code Online (Sandbox Code Playgroud)

mysql sql

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

Web MVC:如何构建Model层?

我将以一个user对象为例.用户需要注册,登录,注销,编辑(例如,电子邮件更改)等.

所以一方面我有一个user对象,它包括各种类变量(伪,电子邮件等)以及getter和setter,也许还有一些不处理db的函数.

另一方面,我有一个DAO类,它是通过各种MySQL/PDO查询直接处理数据库的对象(创建记录,更新,检索信息等).

是否有任何理由不让user对象直接与对象交互DAO?换句话说,当Controller请求与现有user实例相关的数据库查询时(例如,在注册过程中),它是否应该简单地调用user其自身调用函数的函数DAO,或者它们之间是否应该有一个层?

我见过控制器调用第3类与DAO交互的user示例,并将实例作为arg 传递.有时相反,第三层负责创建user实例并处理DAO.在我看来,用于处理的所有函数DAO都可以驻留在user对象中.我错过了什么?

php model-view-controller

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