在我的java应用程序中,我有很多条件决定只有一个动作.我的问题是如何使它看起来很好(我使用NetBeans所以我更喜欢不会被其代码格式化功能破坏的解决方案).我也希望尽可能减少if/else语句的数量,因为我认为它会使它更快.
我的原始代码很乱,所以我制作了一个动作图:
.如果你想玩它,请复制一份.请记住,关于UML 语法的图表并不完美,部分原因是我使用谷歌文档制作它.
这是代码:
if (!config.get("checkForSpecials") || event.isNotSpecial()) {
if (config.get("filterMode").equals("blacklist")) {
if (!itemFilter.contains(event.getItem().getName())) {
item.process();
}
} else if (config.get("filterMode").equals("whitelist")) {
if (itemFilter.contains(event.getItem().getName())) {
item.process();
}
} else {
item.process();
}
}
Run Code Online (Sandbox Code Playgroud)
有两件事我不喜欢它 - 条件不太清楚(特别是当我展开完整的方法名称和配置字符串时),以及进程方法调用有三次这样的事实.
我使用此代码创建一个自定义的tinymce按钮,用于更改一类图像.它在设置块中.
ed.addButton('cust_setimgaspreview', {
title : 'Set image as a preview image',
image : 'ikony/previews.png',
onclick : function() {
if(ed.selection.getNode().tagName == 'IMG')
{
ed.selection.getNode().className = 'preview';
} else {
alert('You need to select an image.');
}
}
});
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我使用"丑陋的方法"来禁用除图像之外的其他元素的类更改.如何以与默认按钮(如编辑图像或编辑链接)相同的方式禁用/启用按钮?我想我需要以某种方式捕捉选择更改,然后根据选择更改按钮状态,但我不知道如何做到这一点.
我正在使用php扩展名tidy-html来清理php输出.我知道整理删除无效标签,甚至无法处理HTML5 doctype,但我使用的标签<menu>曾经是HTML规范.但是,它<ul>无论如何都会改变.
奇怪的是,它没有这样做之前.我改变了整洁的配置,它已经休息了.现在我已经关闭了所有与标签混淆的选项,但它没有帮助.
我的脚本很冗长:
$tidy_config = array(
'char-encoding' => 'utf8',
'output-encoding' => 'utf8',
'output-html' => true,
'numeric-entities' => false,
'ascii-chars' => false,
'doctype' => 'loose',
'clean' => false,
'bare' => false,
'fix-uri' => true,
'indent' => true,
'indent-spaces' => 2,
'tab-size' => 2,
'wrap-attributes' => true,
'wrap' => 0,
'indent-attributes' => true,
'join-classes' => false,
'join-styles' => false,
'fix-bad-comments' => true,
'fix-backslash' => true,
'replace-color' => false,
'wrap-asp' => false,
'wrap-jste' => false,
'wrap-php' …Run Code Online (Sandbox Code Playgroud)