Tag: c#

Java到C#:在Generic中扩展

我试图将这个Java(Android)代码转换为c#(MonoDroid),但我不明白 public class BalloonOverlayView extends FrameLayout

如何正确获取android.net.Uri的文件大小?

我有一个android.net.Uri指向我需要确定文件大小的文件。 目前这是使用contentResolver上的查询完成的(我使用的是Xamarin,所以它是C#): var cursor = contentResolver.Query(uri, new string[] { Android.Provider.OpenableColumns.Size, Android.Provider.OpenableColumns.DisplayName }, null, null, null); cursor.MoveToFirst(); size = cursor.GetLong(0); fileName = cursor.GetString(1); cursor.Close(); 这大部分时间都有效,但对于某些文件,该值似乎比正确的文件大小略大(我使用Total Commander作为参考)。 必须有一个更好的方法来做到这一点,我真的需要确切的大小信息,因为文件非常大,不能先将它们读入内存。 为什么我的方法产生不正确的结果? 在此先感谢您的帮助。

如何从不相互跟随的数字池中生成随机数

我有一个数字池(例如{3,6,7,11,20}),我需要每个数字出现在我的集合中x次。 我的解决方案是创建一个类,让我们称之为“元素”,两个整数(num,numOfAppearnces)。 我在arrayList中创建了一个“元素”池,然后在0到list.size之间生成一个随机数,并将该数字存储在随机索引中。 当numOfAppearances减少到0时,我从列表中删除了这个元素。 我的问题是,有没有其他优雅的解决方案来生成随机数,而不是从一个范围?

垃圾收集前是否清除了内存?

与同事进行了这次讨论。 当c#或java垃圾等语言收集诸如字符串之类的对象,将它们返回堆中时,它们是否也清除了这个内存块,例如用0或1覆盖? 我的假设是块按原样返回,除非使用诸如securestring和finalize重载之类的类来阻止块。

如何将java嵌入C#

你能告诉我,我怎样才能将java模块/源代码嵌入到C#应用程序中? 例如,我有一些写在java上的逻辑,这个逻辑使用了一些只能在java平台上找到的第三方库。 我有在C#上编写的主要主机逻辑。 如果我能够将java中的回调注册到C#中,那将是非常酷的。 非常感谢你!!!

C#SortedDictionary中Java的SortedMap.tailMap的等价物

我有使用SortedMap.tailMap java代码。 在我的移植代码中,我有SortedMap = Dictionary 。 我需要一种在C#中复制/模仿tailMap的方法。 我认为如下: myDictionary.Where(p => p.Key.CompareTo(value) >= 0).ToDictionary 这返回一个Dictionary ,我需要返回一个SortedDictionary 。 我可以从Dictionary创建一个SortedDictionary ,但我觉得应该有一个更优雅和性能更好的方法,因为它已经排序。 另一个想法是做类似的事情 var newSD = new SortedDictionary(); foreach (var p in oldDictionary.Where(p => p.Key.CompareTo(value) >= 0)) newSD.Add(p.Key, p.Value); 这应该工作,我不确定在我构建该列表时,排序顺序中的值的添加将如何影响插入的时间。 还有其他想法吗? Java SortedMap C#SortedDictionary

C#与Java中的访问修饰符最佳实践

我理解OOD中的经验法则是尽量减少对给定对象的所有成员的访问,尽可能合理地完成。 C#和Java似乎都实现了同一组访问修饰符; 然而,令我困惑一段时间的东西现在是为什么Java类似乎主要被声明为公共,而C#类似乎主要被声明为默认。 这些语言是否存在某些微妙之处,这些差异会带来这些差异,还是仅仅是一种惯例或什么? 我发现自己经常通过我的C#代码(我习惯性地将大多数类公开,除了内部类,匿名类,以及其他类别的狭窄范围和有用性)以试图取悦编译器,但是我想知道我是否可能遗漏了某些东西重要。

获取Java类的行为

我在java中有一个generics类定义为: public static class KeyCountMap { private Map map = new LinkedHashMap(); // … rest of the properties… public KeyCountMap() { } @SuppressWarnings({ “unchecked”, “rawtypes” }) public KeyCountMap(Class mapType) throws InstantiationException, IllegalAccessException { map = mapType.newInstance(); } //… rest of the methods… } 我在.NET中定义了相同的类: public static class KeyCountMap { private Dictionary map = new Dictionary(); […]

什么是.NET中的System.nanoTime()?

标题几乎是不言自明的,我正在为这种简单而自杀。 看着这里 ,但没什么用处。

Javainheritance与C#inheritance

假设Java有这些分层类: class A { } class B extends A { public void m() { System.out.println(“B\n”); } } class C extends B { public void m() { System.out.println(“C\n”); } } class D extends C { public static void main(String[] args) { A a = new D(); // am(); // doesn’t work B b = new D(); […]