Tag: 原始types

将string转换为C#中的types

如果我收到一个包含类(对象)名称的string,并且想将此string转换为实际types(string中的那个),那我该怎么做? 我试过了 Type.GetType("System.Int32") 例如,它似乎工作。 但是,当我用我自己的对象尝试,它总是返回null … 我不知道string中会有什么,所以这是我将它转换为真正的types的唯一来源。 Type.GetType("NameSpace.MyClasse"); 任何想法?

generics有什么好处,为什么要使用它们?

我想我会提供这个垒球给任何人想要打到公园外面的人。 generics是什么,generics的优点是什么,为什么,在哪里,我应该如何使用它们? 请保持相当基本。 谢谢。

java:将float转换为String和String来浮动

我怎么能从浮动转换为string或string浮动? 在我的情况下,我需要作出2个值之间的断言(我从表中获得的值)和我计算的浮点值之间的断言。 String valueFromTable = "25"; Float valueCalculated =25.0; 我尝试从浮动到string: String sSelectivityRate = String.valueOf(valueCalculated ); 但断言失败

Haskell数据types的内存占用

我如何find在Haskell中存储一些数据types的值所需的实际内存量(主要是GHC)? 是否有可能在运行时(例如在GHCi中)对其进行评估,还是有可能从组件中估计组合数据types的内存需求? 通常,如果typesa和b内存需求是已知的,那么代数数据types的内存开销是多less,例如: data Uno = Uno a data Due = Due ab 例如,这些值占用内存中有多less个字节? 1 :: Int8 1 :: Integer 2^100 :: Integer \x -> x + 1 (1 :: Int8, 2 :: Int8) [1] :: [Int8] Just (1 :: Int8) Nothing 我知道实际的内存分配比较高,因为垃圾回收的延迟。 由于懒惰评估可能会有很大的不同(并且thunk的大小与值的大小无关)。 问题是,在给定数据types的情况下,在完全评估时它的值需要多less内存? 我发现GHCi中有一个:set +s选项来查看内存统计信息,但不清楚如何估计单个值的内存占用情况。

结合原始types和通用方法

下面是一个问题,第一个代码清单编译得很好(JDK 1.6 | JDK 1.7): ArrayList<String> a = new ArrayList<String>(); String[] s = a.toArray(new String[0]); 但是,如果我将List引用声明为原始types: ArrayList a = new ArrayList(); String[] s = a.toArray(new String[0]); 我得到一个编译器错误,说String[]是必需的,但是find了Object[] 。 这意味着我的编译器将通用方法解释为返回Object[]尽pipe接收到String[]作为其参数。 我加倍检查了toArray(myArray)方法签名: <T> T[] toArray(T[] a); 因此它是一个参数化方法,其types参数<T>与列表(即<E> )没有任何关系。 我不知道如何在这里使用原始types影响使用独立types参数的参数化方法的评估。 有没有人有任何想法为什么这个代码不能编译? 有没有人知道这种行为logging的任何参考?

访问C#匿名types对象

我如何访问其声明范围之外的匿名types的对象? 例如 void FuncB() { var obj = FuncA(); Console.WriteLine(obj.Name); } ??? FuncA() { var a = (from e in DB.Entities where e.Id == 1 select new {Id = e.Id, Name = e.Name}).FirstOrDefault(); return a; }

在C#中的generics类的算术运算符重载

给定一个通用的类定义 public class ConstrainedNumber<T> : IEquatable<ConstrainedNumber<T>>, IEquatable<T>, IComparable<ConstrainedNumber<T>>, IComparable<T>, IComparable where T:struct, IComparable, IComparable<T>, IEquatable<T> 我怎样才能为它定义算术运算符? 以下不编译,因为“+”运算符不能应用于types“T”和“T”: public static T operator +( ConstrainedNumber<T> x, ConstrainedNumber<T> y) { return x._value + y._value; } genericstypes'T'受到'where'关键字的约束,正如你所看到的,但是我需要一个具有算术运算符(IAalgorithm)的数字types的约束。 'T'将是一个原始数字types,如int,float等。这种types是否存在“where”约束?

原始types和引用types有什么区别?

这是一个过去的考试问题,我想知道什么是原始types和参考types是第一次? 对于一个数组我知道引用types是数组由对象或variables组成的地方,但是一个基本types就是用int或者string创build数组的地方。 (对?) 你如何认为你会回答testing的问题,并获得良好的信誉? 没有真正直接指向一个原始的ARRAYtypes…有没有办法做到这一点没有? 或者你认为只用数组解释就可以了。

为什么Java集合不能直接存储基元types?

Java集合只存储对象,而不是原始types; 但是我们可以存储包装类。 为什么这个约束?

默认构造函数是否初始化内置types?

默认构造函数(由编译器创build)是否初始化内置types?