相关疑难解决方法(0)

Java中的函数指针数组

我已经阅读了这个问题,我仍然不知道是否有可能继续指向方法Java中的数组,如果任何人知道,如果这是可能的,或者不是这将是一个真正的帮助.我正试图找到一个优雅的解决方案,保持一个字符串列表和相关的功能,而不会写出数百个'if'的混乱.

干杯

java arrays pointers function

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

Java中的函数指针/委托?

对于我的Java游戏服务器,我发送数据包的Action ID,它基本上告诉服务器数据包的用途.我想将每个Action ID(一个整数)映射到一个函数.有没有办法不使用开关这样做?

java delegates function-pointers

13
推荐指数
1
解决办法
9491
查看次数

如何在C#中使用Java中的委托?

我写了一些c#代码,它实现了几个函数的传递.我使用了代表.

public delegate float Func(float x);
public Dictionary<string, Func> Functions = new Dictionary<string, Func>();
Run Code Online (Sandbox Code Playgroud)

填写字典:

Functions.Add("y=x", delegate(float x) { return x; });
        Functions.Add("y=x^2", delegate(float x) { return x*x; });
        Functions.Add("y=x^3", delegate(float x) { return x*x*x; });
        Functions.Add("y=sin(x)", delegate(float x) { return (float)Math.Sin((double)x); });
        Functions.Add("y=cos(x)", delegate(float x) { return (float)Math.Cos((double)x); });
Run Code Online (Sandbox Code Playgroud)

我使用这些函数来查找它们的最大值和其他一些任务.

private float maxY(params Func[] F)
    {
        float maxYi = 0;
        float maxY = 0;
        foreach (Func f in F)
        {
            for (float i = leftx; i < rightx; i …
Run Code Online (Sandbox Code Playgroud)

c# java delegates

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

Maps :在 Java Maps 中,我可以为 &lt;K,V&gt; 对中的值分配一个函数吗?

我有一组将用作键的字符串,对于特定的字符串,我希望调用一个函数。那么是否可以为该对中的值分配一个函数?

exampleMap.get("SOME_STRING"); // should call a function abc();
Run Code Online (Sandbox Code Playgroud)

java hashmap

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

在Java中,如何创建一个函数指针列表,每个参数都带一个参数?

我已经看过这里,它适用于包含Runnables的参数减少方法列表.我需要Consumer在我的情况下.这是我到目前为止:

import com.google.common.collect.ImmutableList;
import java.util.List;
import java.util.function.Consumer;

public class experiment {

 private static List<Consumer<String>> activities;

 public experiment (){
 activities = ImmutableList.of(
     (userId) -> this::bar,        // throws error
     (userId) -> this::foo);
 }

 public void bar(String x) {
   System.out.println(x);
 }

 public void foo(String x) {
   System.out.println(x);
 }

 public static void main(String []args) {

  for (int i=0; i<2; i++) {
    activities.get(i).accept("activity #" + i);
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

我看到的错误是void is not a functional interface.

我不明白为什么我会这样做,barfoo …

java function-pointers

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

标签 统计

java ×5

delegates ×2

function-pointers ×2

arrays ×1

c# ×1

function ×1

hashmap ×1

pointers ×1