标签: anonymous-class

为什么匿名对象的按键分组的行为不符合预期?

我有一个这种格式的 csv 文件

 A,B,value
 a1,b1,10
 a2,b1,12
 a2,b1,15
 a2,b2,14
 a1,b1,12
Run Code Online (Sandbox Code Playgroud)

我正在我的应用程序中将其转换为数据表。

 Dim enumerable = _dt.AsEnumerable

 Dim groupedResults = enumerable.GroupBy( _
                                   Function(x) _
                                        New With { _
                                                  .A = x.Item("A").ToString, _
                                                  .B = x.Item("B").ToString _
                                                 } _
                                        )
Run Code Online (Sandbox Code Playgroud)

我预计 groupedResults 计数为 4,而不是显示的 5。
基本上它不会将第一行和第五行分为一组。

我期望具有相同值的对象将产生相同的密钥。

可能是什么原因呢?

.net c# linq vb.net anonymous-class

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

避免GWT命令模式中的匿名内部类

我为我的GWT-app使用GWT-dispatcher来获得命令模式的好处.随着服务器调用数量的增加,匿名内部类的数量也会增加并使代码混乱.是否有关于如何从其余代码(在我的案例中为Activity)中提取这些匿名内部类及其onSuccess和onFailure的设计提示?

gwt command class anonymous-class inner-classes

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

java:匿名类

在java中这是有效的

new Thread(new Runnable()
    {   
        public void run()
        {
            for(int i=0;i<5;i++)
                System.out.println("From anonymous:"+i);
        }
    }   
).start();
Run Code Online (Sandbox Code Playgroud)

但这不是:

Thread t=new Thread(new Runnable()
    {   
        public void run()
        {
            for(int i=0;i<5;i++)
                System.out.println("From anonymous:"+i);
        }
    }   
).start();
Run Code Online (Sandbox Code Playgroud)

我能用匿名课来实现吗?如果是,那么如何

java anonymous-class

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

C#中的匿名类

在 C++ 中,我可以在需要它的一段代码中声明一个功能齐全的匿名类,这样如果我只需要一次就不必声明它。

代码应该是这样的

Class MyClass
{
    Class
    {
        String string1;
        String string2;

        void MyMethod();
    } Strings;
}
Run Code Online (Sandbox Code Playgroud)

并将其称为成员MyClass.Strings.string1MyClass.Strings.MyMethod()以此类推。这样我就可以优雅地对我的代码进行分组。

有没有办法在 C# 中做同样的事情?

c# class anonymous-class

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

如何从 OkObjectResult 获取动态属性

IActionResult从控制器方法返回匿名对象的值。
如何再次取出数据?

这是简化为问题本身的控制器方法:

[HttpPost]
public async Task<IActionResult> UploadFile(IFormFile file)
{
    long size = file.Length;
    return Ok(new { count = 1, size });
}
Run Code Online (Sandbox Code Playgroud)

然后我得到了一个.Value属性,它是一个object并制作它dynamic
但不,它不被识别。

[Fact]
public async Task UploadFileTest()
{
    //  #   Given.
    var formFile = new Mock<IFormFile>();
    var sut = new HomeController(null);

    //  #   When.
    IActionResult result = await sut.UploadFile(formFile.Object);

    //  #   Then.
    OkObjectResult okResult = (OkObjectResult)result; // Ok.
    dynamic dynValue = okResult.Value; // Ok.
    var count = dynValue.count; // …
Run Code Online (Sandbox Code Playgroud)

c# anonymous-class

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

Java内部类/闭包

所以我有以下内容:

Object a = data.getA();
Object b = data.getB();
Object c = data.getC();
// and so on
Run Code Online (Sandbox Code Playgroud)

这些对象是从API调用中检索的,可以为null.我想将这些对象放入List中,但前提是它们不是null.

我可以写一堆行:if(a!=null) {myList.add(a}等等.但我觉得有一种更优雅的方式可以避免每次都进行空检查(除了创建辅助方法来执行此操作).

例如,使用javascript,我可以创建一个闭包.Java的任何想法?

java closures anonymous-class

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

一般匿名类实例化问题


我在系统的代码中注意到有人实例化了一个匿名类,如下所示

 Class ExampleClass{

     MyObj obj; 

     methodA(new ClassA(){
         @override public void innerMethodA(){
            //code...
        }
    });
} 
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.
现在,为了使用在方法之前声明的obj,我通常将其定义为final.
我真的不明白为什么,但我这样做,因为编译器要求.在这段代码中,我在innerMethodA()中看到了用法

 ExampleClass.this.obj()
Run Code Online (Sandbox Code Playgroud)

没有最后的.

我的问题:
1.为什么我在使用obj时必须进行最终决定?
2.什么是ExampleClass.this?请注意,ExampleClass是Class而不是实例.什么是"这个"?如果它有几个实例?
3.如果我在内部方法运行时更改obj会发生什么(在我的代码内部方法中循环运行,所以我打算更改它.它会爆炸吗?)

java anonymous-class

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

类可以从匿名类扩展

我知道匿名和内部类的正常用法,但有趣的是 - 如果有可能为匿名类创建子类.我用过搜索但没有发现任何相关内容.

我无法想象这个语法应该是什么样子,但是有可能(可能是使用反射)来创建将从某个匿名类扩展的类(可能会覆盖某些方法) - 或者匿名类总是最终的?

java inheritance anonymous-class

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

是否可以将匿名类声明为抽象?

我试图找出,如果有可能创建匿名内部类作为抽象.
我认为,它没有意义,因为我正在尝试创建抽象类的实例,但是来自编译器的消息使我感到困惑:

类'从Test派生的匿名类'必须被声明为abstract或实现抽象方法'方法( )'在测试中

码:

abstract class Test{
    abstract void method();
}
Test o = new Test(){};
Run Code Online (Sandbox Code Playgroud)


如果可以将匿名类声明为抽象类,请告诉我如何执行此操作.
我很乐意回答.

java abstract-class abstract anonymous-class

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

使用匿名类返回Java中的值

考虑以下代码:

public interface MyClass {
    public final String getMyObject1();
    public final String getMyObject2();
}

public class MyClass1 implements MyClass {
    private String myObject1;
    private String myObject2;
    public MyClass1(String myObject1, String myObject2) {
        this.myObject1 = myObject1;
        this.myObject2 = myObject2;
    }
    public String getMyObject1() {
        return myObject1;
    }
    public String getMyObject2() {
        return myObject2;
    }
}

public interface MyClass2 extends MyClass {
    public static MyClass2 newInstance(String myObject1, String myObject2) {
        return new MyClass2() {
            public String getMyObject1() {
                return myObject1;
            }
            public …
Run Code Online (Sandbox Code Playgroud)

java anonymous-class

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