我有一个类,它有一个方法调用同一个类中的所有其余方法.
一种方法是使用反射框架,还有其他方法吗?
[编辑]添加的示例代码:
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class AClass {
private void aMethod(){
}
private void bMethod(){
}
private void cMethod(){
}
private void dMethod(){
}
//50 more methods.
//method call the rest
public void callAll() throws IllegalArgumentException, IllegalAccessException, InvocationTargetException{
Method[] methods = this.getClass().getMethods();
for (Method m : methods) {
if (m.getName().endsWith("Method")) {
//do stuff..
}
}
}
}
我从callAll()调用所有4个方法实际上没有问题,即避免使用反射.但我的一位同事指出,如果有50种方法,你会逐一称呼它们吗?我没有答案,这就是我在这里提问的原因.
谢谢,莎拉
这个叫每个顶级菜单
var arrayTop=document.getElementById("topmenu").getElementsByTagName("a");
for (i=0;i<arrayTop.length;i++){
document.getElementById(arrayTop[i].id).addEventListener("click",topMenu,false);
}
Run Code Online (Sandbox Code Playgroud)
HTML
<div id="topmenu">
<a id="help" href=#><span>Help</span></a>
<a id="frum" href=#><span>Forum</span></a>
<a id="home" href=#><span>Home</span></a>
</div>
Run Code Online (Sandbox Code Playgroud)
但是,如果未指定id,如何应用addEventListener()?因为一些元素将具有相同的id.所以我将更改id属性
<div id="topmenu">
<a mnuid="help" href=#><span>Help</span></a>
<a mnuid="frum" href=#><span>Forum</span></a>
<a mnuid="home" href=#><span>Home</span></a>
</div>
Run Code Online (Sandbox Code Playgroud) 我有以下问题(或者只是一个思维障碍):
我有一个表(实际上是表中的视图),其中包含以下列和数据:

现在,我想通过"Customer"列对此数据进行分组,并获得具有最高"CompetitorCount"的"CompetitorName".当然我可以创建这样的查询:
SELECT Customer, MAX(CompetitorCount) FROM MyTable GROUP BY Customer
这将返回两行:
Foo; 12
Bar; 7
Run Code Online (Sandbox Code Playgroud)
但我不能以这种方式获得竞争对手名称.如果我将其包含在分组中,则"客户"将多次显示.否则我必须使用聚合函数来选择我想要使用的"CompetitorName",但当然MAX不起作用.
我确信这可以以某种方式完成,但目前我不知道如何.
在此先感谢您的帮助.
我正在开发我的第一个iPhone应用程序,允许用户拍照并将它们和其他元数据存储在App的Documents文件夹中.
如果将来我向用户提供版本更新,它是否会影响用户创建的数据?如果是,那么保存数据的最佳策略是什么?
非常感谢
我正在使用gem rails3-jquery-autocomplete并且没有任何问题,但是我现在已经将自动完成表单移动到应用程序模板中,因此ajax调用现在由应用程序控制器处理,因此我的路由已从以下更改:
home/autocomplete_category_name
Run Code Online (Sandbox Code Playgroud)
现在需要删除主页并从以下路径:
home_autocomplete_category_name_path
Run Code Online (Sandbox Code Playgroud)
至:
autocomplete_category_name_path
Run Code Online (Sandbox Code Playgroud)
有人有任何想法吗?还在学习Rails的来龙去脉,所以现在这对我来说是个死胡同.
谢谢.
以下算法的速度将由发送单词中的单词数和每个单词中的字符数决定.我相信这是O(N ^ 2)?或者更糟.
private bool CheckForNoVowels(string sentence)
{
foreach (string word in sentence.Split(' '))
foreach (char c in word)
if (!vowels.Contains(c))
return true;
}
Run Code Online (Sandbox Code Playgroud)
string.HasVowel比尔盖茨是否隐藏了某些秘密?有没有更好,更有效的方法来搜索它.谢谢.
意图
我试图确定字符串是公司还是名称,我假设如果有一个单词没有元音,它是缩写或缩写,它是一个公司.
我在安装Visual Studion 2010扩展时遇到问题:
安装错误:System.IO.PathTooLongException:C:\ Users\felix.DOMAIN\AppData\Local\Microsoft\VisualStudio\10.0\Extensions\Vendor\Vendor 2011 Developer Tools\1.0\ProjectTemplates\CSharp\XYZ\1033\Vendor.XyzDeveloperTools .XyzPackageProject.zip
我通过双击.vsix文件安装扩展; 所以我没有选择缩短供应商2011开发者工具,比如VendorTools.是否还有其他(更多手动)方式来安装扩展程序?
顺便说一下,总长度是199个字符; 我认为它不到248个字符限制.如果它有所作为,我使用Win7 64位
我有一个c ++ MFC软件,它有一些使用C导出的插件的公共接口.
我即将打开外部3方开发软件.但是使用C导出是针对硬核程序员的.
实施它的最佳方法是什么?我听说过LUA,但想了解其他可能性.
我有线程睡了很长时间,然后醒来做某事,然后再次睡觉,像这样:
while(some_condition)
{
// do something
sleep(1000);
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能让这个线程优雅而快速地退出?
我尝试使用pthread_cancel(),但无法取消睡眠线程.我也试过改变while循环的条件,但是退出仍然需要很长时间.而且我不想使用pthread_kill(),因为它可能会在线程工作时终止它.
那么,有什么好主意吗?
来自C#背景,我或多或少地对在C++中返回方法处理这种看似奇怪的行为感到困惑.我现在关注的是C++中的一个方法,通过引用返回并不是一个非常有用的技术,这是因为 - 与C#不同 - 一旦控件退出方法,在方法体内声明的任何变量都将超出范围.
所以,在C++中,这甚至无法编译(但C#中的等效版本可以):
int& DoubleValue(int nX)
{
int nValue = nX * 2;
return nValue; // return a reference to nValue here
} // nValue goes out of scope here
Run Code Online (Sandbox Code Playgroud)
通过引用返回有用的唯一时间是返回对类中现有数据成员的引用,或者返回对方法参数内的元素的引用.但在这两种情况下都没有必要归还任何东西; 因为返回的引用已经可以自由地用于方法的调用者.
所以,我的结论是,根本没有必要使用引用返回.我对吗?