这个方法没看懂,求大神解释!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了这个方法没看懂,求大神解释!相关的知识,希望对你有一定的参考价值。
这个方法什么意思啊,如果想使用这个方法,怎么调用啊!
这个方法在CompanyService这个类里面
GetaddrAll方法返回的是一个DataTable类型的表,所以你调用它要先new一个DataTable的变量来接收,然后再用foreach 把这个表的每一行取出来就OK了。
先解释下这个方法:
public static DataTable GetaddrAll()
//定义一个公共访问的静态方法GetaddrAll,其中DataTable为返回值的类型,这个方法没有参数
string sql="select Caddr from company";
//定义一个string类型的变量sql,即要传入方法GetDataTable的参数,这是一条sql语句,是从数据表company中查找Caddr字段
try//尝试执行大括号中的代码,用于检查错误
return sqlDBHelper.GetDataTable(sql);
//调用sqlDBHelper中定义好的方法GetDataTable,并将sql语句传进去,然后return返回一个DataTable类型的数据表.
catch(Exception)//如果上面的尝试执行失败,则读出异常的原因,并在下面的throw中显示出来.
shrow;
下面说下调用的方法:
DataTable table= CompanyService.GetaddrAll();
//定义一DataTable类型的变量table ,接收GetaddrAll()方法的返回值
foreach (DataRow row in table.Rows)//遍历table中的每一行数据
string strCaddr=(string)row[0];//定义一个string变量strCaddr,用于接收每行查找到的Caddr
MessageBox.Show(strCaddr);//将strCaddr显示出来
希望能帮到你.满意采纳
参考技术A 这是到数据库去查数据,然后返回一个DataTable类型 如果调用的话 DataTable dt = GetaddrAll()就行了啊。追问DataTable dt = CompanyService GetaddrAll();
这样对吗?
不对 CompanyService c = new CompanyService ();
DataTable dt = c.GetaddrAll();
类名.静态方法([参数列表]); 参考技术C 这貌似是三层架构开发中BLL层中某个类中的一个静态方法,其实真正的方法是DAL层SqlDBHelper类中中的GetDataTable(sql) ,这是一个得到数据源的方法,需要一个参数(sql语句),返回一个DataTable类型数据追问
如果是三层还好说点,我学的就是三层,现在这个项目没有BLL
追答上面的这个方法就是一个桥梁,调用SqlDBHelper类中的一个GetDataTable(sql)(带有参数)的方法,返回一个DataTable 的数据。只是这是一个静态方法,这有什么看不懂的呀?
参考技术D 查询数据库中company表中的Caddr的信息,并以DataTable类型返回使用方法:
DataTable dt = CompanyService.GetaddrAll();
在dataGridView控件上显示 dataGridView1.DataSource=dt;
C语言POJ的一个题目算法没看懂,求帮忙。。。
题目大意:1..n的一个排列An被称作完美排列,等价于数列|Ai - i|是0..n-1的一个排列。对于指定的n≤1000,给出一个完美排列或者输出0表示不存在1..n的完美排列。 这个MS是罗马尼亚数学竞赛的题…… 如果作为ACM问题的话最合适的做法是搜小数据然后找规律 >_< 不过这显然不是我们研究科学问题的态度……下面给出一个带证明的做法。 首先我们证明,当且仅当n ≡ 0, 1 (mod 4)的时候存在1..n的完美排列。 首先,由于|Ai - i|是0..n-1的一个排列,所以∑|Ai - i| = n(n-1)/2。 同时,∑|Ai - i| ≡ ∑(Ai - i) = ∑Ai - ∑i = 0 (mod 2)。 故n(n - 1)/2 ≡ 0 (mod 2)。这样就得到n ≡ 0, 1 (mod 4)。 下面我们构造满足题意的解: 我们把排列看做置换。 n ≡ 0 (mod 4) 的时候,一个可行的置换是轮换(1, n, 2, n - 1, 3, n - 2, ..., n/4, 3n/4 + 1, n/4 + 1, 3n/4 - 1, ..., n/2 - 1, n/2 + 1, n/2)。 3n/4 为这个置换的唯一不动点。 n ≡ 1 (mod 4) 的时候,设s = n - 1,一个可行的置换是轮换(1, n, 2, n - 1, 3, n - 2, ..., s/4, 3s/4 + 2, s/4 + 1, 3s/4, s/4 + 2, 3s/4 - 1, ..., s/2, s/2 + 1)。 而3s / 4 + 1为这个置换的唯一不动点。 这就证明完毕。于是这个题也就解决了。 代码就不贴了。 当且仅当n ≡ 0, 1 (mod 4)是什么意思啊 整个算法有谁还能简单地解释下呢 证明的第三行开始都不懂了
参考技术A ≡这个是恒等于的意思,n≡
0
(mod
4),所以这句话的意思是n除以4余0,mod是取模运算,n关于4取模,也就是求n除以4的余数,另一句同理。
下面分类讨论了两种情况,得出了不动点,即经过映射后,是自身的点。
以上是关于这个方法没看懂,求大神解释!的主要内容,如果未能解决你的问题,请参考以下文章