小编hey*_*Now的帖子

在两个列表之间进行"包含"的有效方法

我有2个整数列表,

l1 = new ArrayList();
l2 = new ArrayList();
Run Code Online (Sandbox Code Playgroud)

我想在他们两个中找出重复的项目,我有我惯常的方法: -

for (Integer i : l1)
{
 if(l2.contains(i)){
    System.out.println("Found!");
  } 
}
Run Code Online (Sandbox Code Playgroud)

我听说contains()就是O(n),让我实现O(n^2).

有没有更好的方法来做到这一点,(少于O(n^2))?

java collections arraylist time-complexity

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

如何获取wpf按钮的父母的父母

我想得到一个Button的父母的父母.我能够让父母使用

Dim tempB As Button = CType(sender, Button)
Dim g1 As Grid = CType(tempB.Parent, Grid)  
Run Code Online (Sandbox Code Playgroud)

(在我的点击处理程序中).但如果我这样做

Dim g2 As New Object
g2 = g1.Parent

tempB.Content = g2.GetType 
Run Code Online (Sandbox Code Playgroud)

我得到了 NullReference Exception

vb.net binding parent-child wpf-controls

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

从对列表中创建邻接列表类型结构

在C#中,我有

class Pair{

  int val1;
  int val2;
}
Run Code Online (Sandbox Code Playgroud)

我有一个来自一个来源的对的列表: -

List<Pair> sList = new List<Pair>();

   1 | 2
   2 | 3
   1 | 4
   4 | 6
Run Code Online (Sandbox Code Playgroud)

我需要将其转换为以下类型的结构: -

 [1, [2, 3, 4, 6]]  
 [2, [3]]
 [3, [2]]
 [4, [1,6]]
 [6, [4]]
Run Code Online (Sandbox Code Playgroud)

什么是最好的方法(没有LINQ)?

c# algorithm dictionary adjacency-list connected-components

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

wpf绑定到字符串

我有一个Movie带有a 的类Dim _characters = New ObservableCollection(of String)
Characters是要获取和设置的关联属性

如何使用Binding将字符显示在listBox中?
到目前为止,我有以下,这是行不通的,因为我不知道该放什么代替ToString.

<ListBox Name="cList" ItemsSource="{Binding Characters}">

 <ItemsControl >
   <ItemsControl.ItemTemplate >
    <DataTemplate >
     <TextBox Text="{Binding ToString}"/>  
    </DataTemplate> 
   </ItemsControl.ItemTemplate> 
 </ItemsControl>

 </ListBox> 
Run Code Online (Sandbox Code Playgroud)

我希望它们是可编辑的,因此是一个文本框.

我试图绑定CharactersTextBox直接,甚至没有工作.

编辑:在代码中,我parentGrid1.DataContext = me.movies在那里
父电网持有的电影.

wpf binding observablecollection wpf-controls

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

覆盖匿名类的tostring

我想覆盖列表中每部电影的标题.
我试图制作x静态和最终但编译器抱怨.

List<Movie> mList = new ArrayList<Movie>();

for(int i = 0; i < 5; i++)
{
int x;
mList.add(new Movie(){


  toString(){

   // need an easy way to give a unique string to each movie here.
   return "Movie" + x;
  } 
}
}
Run Code Online (Sandbox Code Playgroud)

java static final tostring inner-classes

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

C#LINQ GroupBy将List转换为具有一个属性作为值列表的组

我有一个对象列表 list1

Name Value
N1   V100 
N2   V101
N1   V102
N4   V103
N4   V104
Run Code Online (Sandbox Code Playgroud)

我想将其转换为分组列表

Name Values
N1   V100, V102 
N2   V101
N4   V103, V104
Run Code Online (Sandbox Code Playgroud)

当我使用时,GroupBy我得到了整个东西,( list1.GroupBy(key => key.Name) )

Name Values
N1
  N1   V100
  N1   V102
N2
  N2   V101
N4
  N4   V103
  N4   V104
Run Code Online (Sandbox Code Playgroud)

我只想将值作为List.

c# linq lambda igrouping linq-group

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

为什么我的`Runnable`没有`start`方法?

为什么我必须Thread在内部类中扩展而不是实现Runnable 以下代码有效: -

class Outer{

 Inner innerObj;

 Outer(){
  innerObj = new Inner();
 }

 public void begin(){

  innerObj.start();
 }

 class Inner extends Thread{

  Inner(){
   System.out.println("Thread initialized!");
  }

  public void run(){

    System.out.println("Thread running!");

  }  
 }
}

class Driver{

 public static void main(String[] args){

  Outer o1 = new Outer();
  o1.begin();

 }

}
Run Code Online (Sandbox Code Playgroud)

但是使用a Runnable会导致编译错误: -

class Outer{

 Inner innerObj;

 Outer(){
  innerObj = new Inner();
 }

 public void begin(){

  innerObj.start();
 }

 class Inner implements Runnable{

  Inner(){
   System.out.println("Thread initialized!");
  }

  public …
Run Code Online (Sandbox Code Playgroud)

java inheritance multithreading interface inner-classes

-3
推荐指数
1
解决办法
2363
查看次数