小编sho*_*amh的帖子

Javascript在数组中搜索值并获取其密钥

我想创建一个像这样工作的函数:

function arraySearch(array, valuetosearchfor)
{
// some code
}
Run Code Online (Sandbox Code Playgroud)

如果它在数组中找到值,它将返回键,在那里找到值.如果有多个结果(多个键),或者根本没有结果(找不到任何结果),则该函数将返回FALSE.

我找到了这段代码:

function arraySearch(arr,val) 
        {
            for (var i=0; i<arr.length; i++)
                {
                    if (arr[i] == val) 
                    {                    
                        return i;
                    }
                    else 
                    {
                        return false;
                    }
                }
        }
Run Code Online (Sandbox Code Playgroud)

并像这样使用它:

var resultofarraycheck = arraySearch(board, chosen);
                if (resultofarraycheck === false) 
                {
                       document.getElementById(buttonid).value;
                       chosen = 0;
                }
Run Code Online (Sandbox Code Playgroud)

但它似乎没有用.当它应该找到某些东西时,它返回false而不是键(i).

我该如何解决这个问题,或者我做错了什么?

谢谢,如果我的英语不够清楚,我很抱歉.

javascript arrays search

14
推荐指数
2
解决办法
4万
查看次数

"是素数"算法运行时

我正在尝试制作最快的算法,以确定数字是否为素数.我这样做的每个数字从3到100,000.

   for(int i = 3; i < 100000; i += 1)
        if(isPrime(i))
            System.out.println(i);
Run Code Online (Sandbox Code Playgroud)

它需要0.52秒.我的朋友建议不要迭代偶数:

for(int i = 3; i < 100000; i += 2)
        if(isPrime(i))
            System.out.println(i);
Run Code Online (Sandbox Code Playgroud)

它需要0.53秒(可能是一个随机的差异).

为什么他的建议没有减少运行时间?如果我遍历较少的数字,我希望程序运行得更快.

代码isPrime():

public static boolean isPrime(int n)
{
    if((n % 2 == 0 && n != 2) || (n % 3 == 0  && n != 3)|| (n % 5 == 0 && n != 5))
        return false;
    for(int i = 5; i < n / 5; i += 2)
    {
        if(n % …
Run Code Online (Sandbox Code Playgroud)

java algorithm

2
推荐指数
1
解决办法
631
查看次数

Java - 将字符串拆分为数组

我有一个由用户提交的号码.
我想做这样的事情:1568301
这样的数组:1, 5, 6, 8, 3, 0, 1.

如果不在每个数字或类似的东西之间添加",",我怎么能这样做呢?(输入int).

谢谢.

java

0
推荐指数
1
解决办法
161
查看次数

Java - 创建将数组作为参数传递的对象

我想从我的班级创建一个对象.我的类有一个数组属性,如何通过括号传递它?

这是我的班级:

private String Description;
private int[] Data = {0, 0, 0, 0, 0, 0, 0, 0, 0};
    public Key(String Desc, int[] d)
{
    Description = Desc;
    Data = d;
}
Run Code Online (Sandbox Code Playgroud)

这就是我创建对象的方式:

Key k1 = new Key("Shoham's Key", {0, 5 , 6, 4, 3, 2, 7, 1, 9});
Run Code Online (Sandbox Code Playgroud)

谢谢.

java

0
推荐指数
1
解决办法
1958
查看次数

lua - main.lua:18:'结束'预期(在第12行关闭'功能')'elseif'附近

我来自Java并尝试用lua和love2d编写iPad应用程序.我很新,我总是得到这个错误:

Syntax error: main.lua:18: 'end' expected (to close 'function' at line 12) near 'elseif'
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

function setup()
i = 0
end

function draw()
if i == 0
then
background(0, 0, 0, 0)
i = i + 1
end
elseif i == 1
then
background(255, 0, 0, 0)
i = i + 1

elseif i == 2
then
background(0, 255, 0, 0)
i = i + 1

elseif i == 3
then
background(0, 0, 255, 0)
i = i + 1 …
Run Code Online (Sandbox Code Playgroud)

lua love2d

0
推荐指数
1
解决办法
2121
查看次数

标签 统计

java ×3

algorithm ×1

arrays ×1

javascript ×1

love2d ×1

lua ×1

search ×1