草庐IT

模糊规则

全部标签

java - 帮助在 Java 中使用霍纳规则和散列函数?

我正在尝试使用Horner规则将单词转换为整数。我明白它是如何工作的,如果这个词很长,它可能会导致溢出。我的最终目标是在散列函数h(x)=xmodtableSize中使用转换后的整数。我的书建议,由于溢出,您可以“在计算霍纳规则中每个带括号的表达式后应用mod运算符”。我不完全明白他们的意思。假设表达式看起来像这样:((14*32+15)*32+20)*32+5我是否在每个带括号的表达式后取modtableSize并将它们加在一起?这个散列函数和霍纳规则的这个例子会是什么样子? 最佳答案 这本书说你应该利用这些数学等价物:(a*b)

java - 根据 JLS(6.4.2。模糊)的 "obscuring"的代码示例,尤其是这个 "local variable or type can obscure a package"

你能举几个模糊的例子(代码片段)吗?我读了JLS,但我不明白这个概念。JLS没有给出代码示例。隐藏在Base类和Derived类的字段之间。阴影在字段和局部变量之间。模糊-在什么(?)和什么(?)之间旁白:有趣的是,JLS说如果从父类中隐藏相应的字段不会继承:Shadowingisdistinctfromhiding(§8.3,§8.4.8.2,§8.5,§9.3,§9.5),whichappliesonlytomemberswhichwouldotherwisebeinheritedbutarenotbecauseofadeclarationinasubclass.Shadowing

java - 创建实体规则

我想知道这个简单问题的答案。当我创建一个实体对象并且我想限制一个属性的设置时(例如我不想让任何人给一个属性设置一个小于1的整数值),我应该在setter中实现它吗这个属性或者我应该在处理这些对象的类中检查这个限制?一般来说,只要我的getter返回并且setter设置属性,我可以实现getter和setter吗?我知道java中有一些规则(代码约定),所以我不想破坏其中任何一个。提前致谢,希望我的问题足够清楚,对于我可能犯的任何语法错误深表歉意:/。 最佳答案 是的,getter/setter对此很有用。例如:publicvoids

java - JBehave 模糊步骤

假设我有:@Given("firstnameis$firstName")@Given("firstnameis$firstNameandlastnameis$lastName")以下步骤将被标记为不明确:GivenfirstnameisJohnandlastnameisSmith如果不使用引号将第一个参数括起来,我该如何修正这一步,使其只匹配第二个参数?使用引号分别包围两个参数也有同样的歧义问题。每个参数的长度有限制吗?是否有某些字符不能传入? 最佳答案 您可以通过使用步骤优先级来解决此问题,如此处所述:http://jbehave

java - 是否有有效 Maven 开发人员角色的规则?

Maven支持与,但是,我没有看到有效角色的正式列表。这些角色只是用于文档目的的纯文本吗?如果没有官方的角色列表可供选择,是否有关于如何格式化角色名称的规则或标准?例如,UI开发人员是uideveloper,一个ui-developer,一个UIDeveloper等 最佳答案 这是我在XSD中看到的。角色只是一个普通的xs:string,它主要用于文档。3.0.0+Therolesthecontributorplaysintheproject.Eachroleisdescribedbyaroleelement,thebodyofwh

java - 如何排除特定 findbugs 规则的包

我已经尝试了几次迭代,但这是我最新的最终我想让所有包匹配(glob语法)com.xenoterracide.rpf.*.ui或者只是com.xenoterracide.rpf.*INFO]Thefieldcom.xenoterracide.rpf.character.ui.CharactersView.editDialogistransientbutisn'tsetbydeserialization[com.xenoterracide.rpf.character.ui.CharactersView]InCharactersView.javaSE_TRANSIENT_FIELD_NOT_

java - 用Java编写的开源规则引擎

我正在研究与AI相关的应用程序。对于此应用程序,我需要一个规则引擎。Jess是一个完全用Java编写的良好规则引擎。但是由于许可证限制,对于我的应用程序,我无法使用它。有人可以告诉我一个用Java编写的开源规则引擎吗? 最佳答案 现成的规则引擎开源可能对您的应用程序来说完全是矫kill过正,我以前使用过Drools,而且它非常重,在使用它之前还需要了解框架-对于Drools来说还不错,但它用Scala/Groovy/JRuby之类的东西编写自己的DSL规则引擎可能更合适。这里有一篇有趣的文章,谈论构建基于Groovy的规则引擎:ht

java - 位掩码的规则是什么?就像 0xFF 与 0xFC

我正在开发一个创建程序生成地牢的游戏,我发现了一个使用位掩码来检索房间号和门类型等内容的示例。在示例中,他使用位掩码从每个图block的整数中提取详细信息。整数被分解成这样0xLLSDRRETL-istheLevelNumberS-Denotesaspecialtile(LikeStairs)D-isifitsadoor,andwhattype(Door,Arch,Trapped)R-RoomnumberE-FlagsanentrancetoaroomT-Namesthetypeoftile(Floor,Cooridor,Blocked)在此他使用一个位掩码来获取,例如,房间号:int

C 语言 —— 命名规则

为什么要命名?首先,对于计算机来说,没有命名不命名的,只有0和1。数据保存在内存中,程序使用数据时,需要知道该数据在内存中的地址,才能使用,而地址是由一系列的0、1组成。之所以要有命名是因为直接使用内存地址的话,不光使用的时候非常麻烦,而且阅读代码的时候也十分难以阅读。C语言的命名提供了一个机制,我们为使用的内存地址命了一个名,之后使用这个名字,程序会根据这个名字找到对应的内存地址,使用该数据。另外为了便于日后代码的阅读性,要求命名时要使用有意义的变量名或标识符。如果变量名无法清楚地表达自身的用途,可以在注释中进一步说明。结论:命名是为了我们编写和阅读代码方便而引入的,为了便于代码阅读,推荐命

java - Checkstyle 规则以防止调用某些方法和构造函数

是否可以使用Checkstyle来禁止使用某些使用系统相关默认值(区域设置、字符集等)的构造函数或方法。我更喜欢强制执行一项政策,程序员应该明确说明依赖于系统的值。所以我认为以下元素是危险的:java.io.FielWriter的所有构造函数使用系统相关的编码java.io.OutputStreamWriter的OutputStreamWriter(OutputStreamos)构造函数使用系统相关的编码java.lang.String.toLowerCase()方法使用系统默认语言环境java.util.Calendar.getInstance()方法使用系统默认语言环境和默认时区(