Heim  >  Artikel  >  Backend-Entwicklung  >  有一段代码,想用C#来表示,主要是数组问题

有一段代码,想用C#来表示,主要是数组问题

WBOY
WBOYOriginal
2016-06-23 14:00:50899Durchsuche

$cursor = exequery( TD::conn( ), $query );while ( $rows = mysql_fetch_array( $cursor ) ){	$a_bi[$tid]['selected'] = array( );	$a_bi[$tid]['unselected'] = array( );}

$cursor = exequery( TD::conn( ), $query );while ( $rows = mysql_fetch_array( $cursor ) ){	$tid = $rows['tid'];	$rid = $rows['rid'];	$report_name = $rows['report_name'];	$report_limit_users = $rows['report_limit_users'];	$s_type_name = "[".$a_bi[$tid]['name']."]";	if ( strpos( $report_limit_users, $s_user ) === FALSE )	{		$a_report[$rid]['name'] = $s_type_name.$report_name;		$a_bi[$tid]['selected'][$rid]['name'] = $s_type_name.$report_name;	}	else	{		$a_bi[$tid]['unselected'][$rid]['name'] = $s_type_name.$report_name;	}}

主要是数组怎么用C#语法表示。听说用字典可以,但还是不知道怎么写。


回复讨论(解决方案)

C# 不也是支持多维数组的吗?
你把键名换成下标不就可以了吗?

具体怎么写呢,给个例子吧

比如 $a_bi[$tid]['selected'][$rid]['name'] 
可写作
a_bi[tid][selected][rid][name] 
其中 tid 和 rid 是读取的变量 selected 和 name 是自定义变量,取值 0,1,2,3,4....

这样的直译的好处在于没有改变原算法的形式,也不需要完全理解算法原理
坏处在于无效的内存较多,但可在理解算法的基础上进行优化。当然这是后话了

在PHP中这是个多维数组吧?如果按C#来这样写的话,估计会报错吧,C#中ARRAYLIST一维可以用索引,如果多维的话也可以吗?

Dictionary>
a_bi = new 
Dictionary>如果是字典对象,这样写对不对?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn