我有多个服务使用一种方法实现接口 - execute(). 每个服务都使用此方法根据字符串值执行一些操作,在原始代码中,该值是枚举,因此这些值是常量。
interface Service{
public void execute();
}
class Service1 implements Service{
//constructors
public void execute(JSONObject payload, String payloadType){
if(payloadType.equals("type1")){
doSomething(payload);
}
}
}
class Service2 implements Service{
//constructors
public void execute(JSONObject payload, String payloadType){
if(payloadType.equals("type1")){
doSomething1(payload);
}
if(payloadType.equals("type2")){
doSomething2(payload);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想避免每次创建新服务时都编写相同的 if 语句。问题是,每个服务不必根据每个字符串类型执行操作。所以Service1在type等于"type1"时执行action,而Service2根据"type1"和"type2"执行action。
我尝试了以下解决方案:
class Main {
public static void main(String[] args) {
exec(new B(), "type2");
}
private static void exec(Service service, JSONObject payload, String payloadType){
if(payloadType.equals("type1")){
Init i = (Init)service;
i.init(payload);
}
if(payloadType.equals("type2")){ …Run Code Online (Sandbox Code Playgroud) from Tkinter import *
import webbrowser
root = Tk()
frame = Frame(root)
frame.pack()
url = 'http://www.sampleurl.com'
def OpenUrl(url):
webbrowser.open_new(url)
button = Button(frame, text="CLICK", command=OpenUrl(url))
button.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
我的目标是在单击 GUI 小部件中的按钮时打开一个 URL。但是,我不确定如何执行此操作。
当我在不单击任何内容的情况下运行脚本时,Python 会打开两个新窗口。此外,当我单击按钮时没有任何反应。
我正在尝试为 codeigniter 项目制作一个虚拟主机。我在 httpd-vhosts.conf 中做到了这一点:
<VirtualHost *:80>
DocumentRoot "C:\xampp\htdocs\CI_projects\facebook-login"
ServerName dev.facebook-login.com
<Directory "C:\xampp\htdocs\CI_projects\facebook-login">
Require all granted
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
在 application/config/config.php 中,
$config['base_url'] = 'http://dev.facebook-login.com';
Run Code Online (Sandbox Code Playgroud)
和
$config['index_page'] = '';
Run Code Online (Sandbox Code Playgroud)
浏览器打开登陆页面。但是当从任何其他 uri 传输时,它说找不到对象。当我像这样配置 httpd-vhosts.conf 时:
<VirtualHost *:80>
DocumentRoot "C:\xampp\htdocs\CI_projects\facebook-login\index.php"
ServerName dev.facebook-login.com
<Directory "C:\xampp\htdocs\CI_projects\facebook-login\index.php">
Require all granted
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
它出现了资产问题,即图像和某些 css 无法加载。我该如何解决?
眼镜:
我正在使用 jest 进行集成测试,其中一个文件夹下有 20 个测试文件。我需要确保在运行测试时不需要执行该文件夹中的三个文件。我尝试使用testPathIgnorePatterns但它仅适用于文件夹而不适用于文件。怎么做?
笑话配置.js
/**
* @file Jest Integration Test Configuration File
*/
module.exports = {
roots: ['../../tests'],
testRegex: '_*_integration.test.(js|ts|tsx)?$',
globals: {
'ts-jest': {
tsconfig: 'tsconfig.json',
},
},
moduleFileExtensions: ['ts', 'js'],
transform: {
'^.+\\.(ts|tsx)$': 'ts-jest',
},
testPathIgnorePatterns: ['tests/api/modules/m3/sample.test.ts'],
testEnvironment: 'node',
reporters: [
'default',
[
'../../node_modules/jest-html-reporter',
{
pageTitle: 'Integration Test Report',
outputPath: 'tests/reports/integration-test-report.html',
includeFailureMsg: true,
},
],
],
};
Run Code Online (Sandbox Code Playgroud) 它看起来e for e in [1, 2, 3, 4, 5]是一个生成器表达式,(e for e in [1, 2, 3, 4, 5])并被评估为一个生成器对象。因此,我认为(...)是 Python 中的评估。
我想list(e for e in [1, 2, 3, 4, 5])是告诉 Python 运行时评估可迭代表达式,生成它的对象,并调用list函数来调用,yield直到它用完元素。
print(list(e for e in [1, 2, 3, 4, 5]))
---
[1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
[...]下面的代码实际上是什么,它的机制是什么?[ e for e in [1, 2, 3, 4, 5] ]生成一个列表对象,因此我认为它是e for e in [1, 2, …
我在 R 中有这个颜色向量:
"#88FF00" "#54FF00" "#FFFF00" "#13FF00" "#50FF00" "#87FF00" "#FDFB02" "#B8FF00" "#6DFF00"
"#ECFF00" "#CBFF00" "#EDFF00" "#39FF00" "#B7FF00" "#75FF00" "#65FF00" "#C2FF00" "#25FF00"
"#9AFF00" "#E6FF00" "#58FF00" "#E5CA1A" "#DEFF00" "#9AFF00" "#21FF00" "#35FF00" "#3AFF00"
"#D0912F" "#FF0000" "#F7EF08" "#40FF00" "#DA7325" "#D8B027" "#DAFF00" "#55FF00" "#F8F007"
"#46FF00" "#69FF00" "#B8FF00" "#37FF00" "#32FF00" "#60FF00" "#7CFF00" "#00FF00" "#50FF00"
"#F3E60C" "#DFBE20" "#7FFF00" "#F7EF08" "#99FF00" "#13FF00" "#DA7325" "#13FF00"
Run Code Online (Sandbox Code Playgroud)
我想按此顺序绘制它们,例如热图。我一直在玩弄图像功能,但颜色被重新排序,甚至被图像功能修改。
我尝试的代码如下,当 cols 是上面提到的颜色向量时:
image(1:nrow(expressionOrdered), 1:ncol(expressionOrdered), as.matrix(expressionOrdered), col= cols,xlab="",ylab="")
Run Code Online (Sandbox Code Playgroud) 我最近做了一个程序,它处理了很多 if/else 语句来返回特定的值。有人建议改用查找表。我的问题是,
当我在 Linux 终端中写入 $ns 时,它会显示以下消息:
"When configured, ns found the right version of tclsh in /usr/bin/tclsh8.6
but it doesn't seem to be there anymore, so ns will fall back on running the first tclsh in your path. The wrong version of tclsh may break the test suites. Reconfigure and rebuild ns if this is a problem. "
Run Code Online (Sandbox Code Playgroud)
它会导致我正在执行的 TCL 文件出现任何问题吗?我正在使用ns-allinone-2.35.
我正在学习 Django Rest Framework。并且有两个概念在我看来几乎是一样的,并且用于不同的场景。
rest_framework mixins我认为当我们使用视图集时会使用它们。并rest_framework generics与 APIViews 一起使用。
这两个组件有什么区别?
python ×3
django ×2
apache ×1
c++ ×1
codeigniter ×1
dictionary ×1
django-views ×1
hashtable ×1
jasmine ×1
java ×1
javascript ×1
jestjs ×1
lookup ×1
mixins ×1
networking ×1
node.js ×1
ns2 ×1
php ×1
plot ×1
r ×1
tkinter ×1
uri ×1