list过滤
『壹』 C#的问题,怎么在List集合中筛选数据
方法一:Linq
ChannelList就是一个List类型的数据,IsOpen是其元素的属性
channelCount=(fromchannelinDevicesManager.Instance.CurrentDevice.ChannelList
wherechannel.IsOpen
groupchannelbychannel.ChannelID).Count();
方法二:泛型委托Predicate<T>
publicdelegateboolPredicate<inT>(
Tobj
)
方法三、
///<summary>
///筛选运送方式
///</summary>
///<paramname="list">运送方式集合</param>
///<paramname="strType">运送方式</param>
///<returns></returns>
privateList<FeeRuleDto>selectList(List<FeeRuleDto>list,stringstrType)
{
returnlist.FindAll(delegate(FeeRuleDtoinfo){
if(info.DeliveryType.ToString()==strType)
{
returntrue;
}
else{
returnfalse;
}
});
}
方法四、
使用List<T>获取数据库表的时候,每次用户操作都重新访问数据库,然后返回List<T>,会严重影响程序运行效率的方式,其实List<T>自带有筛选的方法,把想要的数据筛选到另一个List<T>中,不用重新访问数据库,直接筛选后绑定控件显示即可。
示例如下:
publicNumberModelcurrentmark;
publicMainFrmmainFrm;
privateList<GoodsModel>goodslist;
privateList<GoodsKindModel>goodskindlist;
privatevoidlstgoodkind_SelectedIndexChanged(objectsender,EventArgse)
{
try
{
if(lstgoodkind.SelectedValue.ToString()!="XY.Model.GoodsKindModel")
{
stringid=lstgoodkind.SelectedValue.ToString();
stringkname=lstgoodkind.Text;
if(kname!="全部")
{
List<GoodsModel>glist=goodslist.FindAll(delegate(GoodsModelp){returnp.GoodsKind==kname;});
bindgoods(dgvgoods,glist);
}
else
{
bindgoods(dgvgoods,goodslist);
}
}
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
}
privatevoidbtnAdd_Click(objectsender,EventArgse)
{
try
{
stringgid=dgvgoods.Rows[dgvgoo
例如:跳过List前50条,然后取100条,可写为:
iclist_temp、iclist都为List类型
iclist_temp = iclist.Skip(50).Take(100).ToList();
取前100条,可以写为:
iclist_temp = iclist.Take(100).ToList();
ds.SelectedRows[0].Index].Cells["goodsid"].Value.ToString();
GoodsModelgoods=goodslist.Find(delegate(GoodsModelp){returnp.ID==gid;});
XY.BLL.ConsumeBll.Add(goods,currentmark,mainFrm.user);
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
}
『贰』 如何过滤list中的重复数据
public class TesFilterList {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("123");
list.add("nihao");
list.add("nihao");
list.add("nihao");
list.add("nihao");
list.add("456");
list.add("789");
int len = list.size();
for(int i=0; i<len-1; i++){
String temp = list.get(i);
for(int j=i+1; j<len; j++){
if(temp.equals(list.get(j))){
list.remove(j);
j-- ;
len-- ;
}
}
}
for(int m=0; m<len; m++){
System.out.print(list.get(m) + " ");
}
}
}
『叁』 Adblock Plus ChinaList+EasyList过滤规则具体是什么规则
看着个https://adblock-chinalist.googlecode.com/svn/trunk/adblock.txt,里来面就是拦截广告自的列表。简单说就是是广告就会被拦截。不过可以通过白名单申诉,要符合白名单的要求才不被拦截。可接受规则:https://adblockplus.org/zh_CN/acceptable-ads#criteria
『肆』 华为路由器里面的5种过滤器详解 跪求啊!!!
这些都是不同命令行里的参数。
prefix-list:IP前缀列表。
# 定义if-match子句,设置匹配相关的IPv6路由信息。
<HUAWEI> system-view
[HUAWEI] route-policy policy permit node 10
[HUAWEI-route-policy] if-match ipv6 address prefix-list p1
[HUAWEI-route-policy] if-match ipv6 next-hop prefix-list p1
[HUAWEI-route-policy] if-match ipv6 route-source prefix-list p1
as-path-filter xxx:指定匹配的AS路径过滤器号。
# 创建序号为2的AS路径过滤器,允许AS路径中包含20的路由通过。
<HUAWEI> system-view[HUAWEI] ip as-path-filter 2 permit [ 20 ]
# 查看AS路径属性中包含65420的所有BGP VPNv6路由信息。
<HUAWEI> system-view
[HUAWEI] ip as-path-filter 1 permit 65420*
[HUAWEI] display bgp vpnv6 all routing-table as-path-filter 1
community-filter:用来显示匹配指定的BGP团体属性过滤器的路由信息。
# 查看本端指定团体列表的所有BGP VPNv6路由信息。
<HUAWEI> system-view
[HUAWEI] ip community-filter 1 permit internet
[HUAWEI] display bgp vpnv6 all routing-table community-filter 1 whole-match
route-policy xxx:指定路由策略名称
显示名为policy1的Route-Policy信息。
<HUAWEI> display route-policy policy1
『伍』 java 怎么删除List中的指定元素
主要有三种方法:
用一个List 记录要删除的数据,最后removeAll(List);
『陆』 list 字典泛型过滤
List<Dictionary<string, string>> dic = JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(jsondata);
List<Dictionary<string, string>> list = new List<Dictionary<string, string>>(); // 用于保存符合条件的记录
dic.ForEach(o=>{
if(string.IsNullOrEmpty( o["name"])) return;
list.Add(o);
});
//ps:手写 关键字或方法名内写错 麻烦容更正下
『柒』 如何对show processlists数据进行like过滤操作
可以直接查询表来进行like 或者order操作
mysql> select user,host,time from information_schema.processlist where user='klb';
+------+---------------------+------+
| user | host | time |
+------+---------------------+------+
| klb | 172.18.32.108:56785 | 576 |
| klb | 172.18.32.107:34910 | 1260 |
| klb | 172.18.32.106:63789 | 383 |
| klb | 172.18.32.105:47629 | 570 |
+------+---------------------+------+
4 rows in set (0.00 sec)
mysql> select user,host,time from information_schema.processlist where user='klb' order by time desc;
+------+---------------------+------+
| user | host | time |
+------+---------------------+------+
| klb | 172.18.32.107:34910 | 1269 |
| klb | 172.18.32.108:56785 | 585 |
| klb | 172.18.32.105:47629 | 579 |
| klb | 172.18.32.106:63789 | 392 |
+------+---------------------+------+
4 rows in set (0.00 sec)
『捌』 Java两个List的过滤问题
packagetest;
importjava.util.ArrayList;
importjava.util.List;
publicclassA1
{
publicstaticvoidmain(String[]args)
{
List<String>list1=newArrayList<String>();
list1.add("JSON--B--TEST");
list1.add("JSON--A--TEST");//deletethisitem
list1.add("JSON--C--TEST");
List<String>list2=newArrayList<String>();
list2.add("B");
list2.add("C");
Stringtemp=list2.toString().replaceAll("[\[\]\s]","").replaceAll("\,","|");
System.out.println(temp);
Stringreg="^.*("+temp+").*$";
for(inti=0;i<list1.size();i++)
{
if(!list1.get(i).matches(reg))
{
list1.remove(i);
}
}
System.out.println(list1.toString());
}
}
『玖』 C#的问题,怎么在List集合中筛选数据
方法一:Linq
ChannelList就是一个List类型的数据,IsOpen是其元素的属性
channelCount=(fromchannelinDevicesManager..CurrentDevice.ChannelList
wherechannel.IsOpen
groupchannelbychannel.ChannelID).Count();
方法二:泛型委托Predicate<T>
publicdelegateboolPredicate<inT>(
Tobj
)
方法三、
///<summary>
///筛选运送方式
///</summary>
///<paramname="list">运送方式集合</param>
///<paramname="strType">运送方式</param>
///<returns></returns>
privateList<FeeRuleDto>selectList(List<FeeRuleDto>list,stringstrType)
{
returnlist.FindAll(delegate(FeeRuleDtoinfo){
if(info.DeliveryType.ToString()==strType)
{
returntrue;
}
else{
returnfalse;
}
});
}
方法四、
使用List<T>获取数据库表的时候,每次用户操作都重新访问数据库,然后返回List<T>,会严重影响程序运行效率的方式,其实List<T>自带有筛选的方法,把想要的数据筛选到另一个List<T>中,不用重新访问数据库,直接筛选后绑定控件显示即可。
示例如下:
publicNumberModelcurrentmark;
publicMainFrmmainFrm;
privateList<GoodsModel>goodslist;
privateList<GoodsKindModel>goodskindlist;
privatevoidlstgoodkind_SelectedIndexChanged(objectsender,EventArgse)
{
try
{
if(lstgoodkind.SelectedValue.ToString()!="XY.Model.GoodsKindModel")
{
stringid=lstgoodkind.SelectedValue.ToString();
stringkname=lstgoodkind.Text;
if(kname!="全部")
{
List<GoodsModel>glist=goodslist.FindAll(delegate(GoodsModelp){returnp.GoodsKind==kname;});
bindgoods(dgvgoods,glist);
}
else
{
bindgoods(dgvgoods,goodslist);
}
}
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
}
privatevoidbtnAdd_Click(objectsender,EventArgse)
{
try
{
stringgid=dgvgoods.Rows[dgvgoo
例如:跳过List前50条,然后取100条,可写为:
iclist_temp、iclist都为List类型
iclist_temp = iclist.Skip(50).Take(100).ToList();
取前100条,可以写为:
iclist_temp = iclist.Take(100).ToList();
ds.SelectedRows[0].Index].Cells["goodsid"].Value.ToString();
GoodsModelgoods=goodslist.Find(delegate(GoodsModelp){returnp.ID==gid;});
XY.BLL.ConsumeBll.Add(goods,currentmark,mainFrm.user);
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
}
『拾』 ArrayList中字符串的过滤
import java.util.*;
public class Doc {
public static void main(String[] args) {
();
}
public static void test() {
int[] num = new int[] { 1, 4, 5, 7, 8, 9 };
List<User> list = getListUser();
List<User> newlist = new ArrayList<User>();
// 双层循环将数据里的元素和集合中的元素逐个取出,用于对比
for (int i = 0; i < num.length; i++) {
for (int j = 0; j < list.size(); j++) {
// 当数组中的元素等于user的id时将对应的name改值,并存入新的集合中
if (num[i] == list.get(j).getId()) {
list.get(j).setName(list.get(j).getName() + "pipei");
newlist.add(list.get(j));
}
}
}
for (int i = 0; i < newlist.size(); i++) {
System.out.println(newlist.get(i).getId() + "\t"
+ newlist.get(i).getName());
}
}
public static List<User> getListUser() {
List<User> list = new ArrayList<User>();
User user1 = new User();
user1.setId(1);
user1.setName("abc");
list.add(user1);
User user2 = new User();
user2.setId(2);
user2.setName("123");
list.add(user2);
User user3 = new User();
user3.setId(3);
user3.setName("asd");
list.add(user3);
User user4 = new User();
user4.setId(4);
user4.setName("qwe");
list.add(user4);
User user5 = new User();
user5.setId(5);
user5.setName("fds");
list.add(user5);
User user6 = new User();
user6.setId(6);
user6.setName("';.");
list.add(user6);
User user7 = new User();
user7.setId(7);
user7.setName("```");
list.add(user7);
User user8 = new User();
user8.setId(8);
user8.setName("!@#");
list.add(user8);
User user9 = new User();
user9.setId(9);
user9.setName("~~~");
list.add(user9);
User user10 = new User();
user10.setId(10);
user10.setName("777");
list.add(user10);
return list;
}
}
class User {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}