精华内容
下载资源
问答
  • 通配符

    2020-03-05 12:42:39
    通配符所认定的一个取值应该是大于Object,某结构使用了泛型的通配符之后就不允许向里面添加元素了,除过null。但是可以通过get方法访问所指向的对象,返回值是Object类型。通配符在泛型机制中主要用作集合之间的赋值...

    一.通配符

    1.1定义

    通配符的表示形式是“ ?”,泛型中的通配符会被认为是所有泛型类型包括Object类型的父类。通配符所认定的一个取值应该是大于Object,某结构使用了泛型的通配符之后就不允许向里面添加元素了,除过null。但是可以通过get方法访问所指向的对象,返回值是Object类型。通配符在泛型机制中主要用作集合之间的赋值。

    List<?> list4=new ArrayList<>();
    		list4=list;
    		list4.add(null);
    	    /*
    	     * 此处可以使用Object接收,但是不能使用Person接收
    	     * 因为Object是所有类型的父类,此处的get是通过通配符访问的,
    	     * 因此不知道什么类型。
    	     */
    		list4.get(0);
    		System.out.println();
    

    1.2 限制性通配符

    所谓限制性通配符就是规定了集合中添加元素是在某个区间之内,有两种方式:List<? extends A>:称为上限,表示集合中的元素必须小于等于A的类型;List<? super A>称为下限,表示集合中的元素的类型大于等于A的类型,为了适应多态的特点,添加元素的类型必须符合多态的特点,不能向有上限的集合中添加元素,因为不知道具体的类型是什么。可以向有下限的集合中添加元素,但是添加的添加的元素应该比下限所表示的类小。

    //范围为(-无穷,Person),取值范围无法界定
    		List<? extends Person> list=null;
    		//左闭右开,添加的时候比Person小
    		List<? super Person> list1=null;
    	    
    		List<Object> list2=new ArrayList();
    	    
    		list2.add(new Person());
    	    
    		List<Person> list3=new ArrayList();
    	    
    	    List<Student> list4=new ArrayList();
    //	    //有上限
    //	    //list=lit2;
    //	    list=list3;
    //	    list=list4;
    //	    //有下限
    //	   list1=list2;
    //	    list1=list3;
    	   // list1=list4;
    	   //添加元素
    	    /*
    	     * 此处出现错误的主要原因,list集合是有上限的因此不能确定
    	     * 比上更小的类。
    	     */
    //	    list.add(new Person());
    	   boolean b= list1.add(new Student());
    	    //获取数据
    	   Person p=list.get(0);
    	   //获取数据
    	   Object o=list1.get(0);
    	}
    

     

    展开全文
  • SQL 通配符

    2020-12-16 16:28:29
    SQL 通配符 通配符可用于替代字符串中的任何其他字符。 SQL 通配符 在 SQL 中,通配符与 SQL LIKE 操作符一起使用。 SQL 通配符用于搜索表中的数据。 在 SQL 中,可使用以下通配符通配符 描述 % 替代 0 个...
  • Java泛型 通配符 通配符有三种使用方式 上限通配符 - ? extends扩展类型。 下限通配符 - ? super超级类型。 无限通配符 - ? 通配符关键字 上限通配符 - 如果变量属于类别,请使用带有通配符的extends关键字。 ...

    Java泛型 通配符

    通配符有三种使用方式

    • 上限通配符 - ? extends扩展类型。
    • 下限通配符 - ? super超级类型。
    • 无限通配符 - ?

    通配符关键字

    • 上限通配符 - 如果变量属于类别,请使用带有通配符的extends关键字。
    • 下限通配符 - 如果一个变量是外部类别,请使用带有通配符的super关键字。
    • 无限通配符 - 如果可以使用Object类方法访问变量,则使用未绑定的通配符。
    • 无通配符 - 如果代码访问进/出类别中的变量,那么不要使用通配符。

    示例:

    //Java 泛型通配符
    public class GenericWildcard {
        //上限通配符
        public static void deleteCat(List<? extends Cat> catList, Cat cat) {
            catList.remove(cat);
            System.out.println("Cat Removed");
        }
    
        //下限通配符
        public static void addCat(List<? super RedCat> catList) {
            catList.add(new RedCat("Red Cat"));
            System.out.println("Cat Added");
        }
    
        // 无限通配符
        public static void printAll(List<?> list) {
            for (Object item : list)
                System.out.println(item + " ");
        }
    
        public static void main(String[] args) {
    
            List<Animal> animalList = new ArrayList<Animal>();
            List<RedCat> redCatList = new ArrayList<RedCat>();
            addCat(animalList);
    
            addCat(redCatList);
            addCat(redCatList);
    
            printAll(animalList);
            printAll(redCatList);
    
            Cat cat = redCatList.get(0);
            deleteCat(redCatList, cat);
            printAll(redCatList);
        }
    }
    
    class Animal {
        String name;
    
        Animal(String name) {
            this.name = name;
        }
    
        public String toString() {
            return name;
        }
    }
    
    class Cat extends Animal {
        Cat(String name) {
            super(name);
        }
    }
    
    class RedCat extends Cat {
        RedCat(String name) {
            super(name);
        }
    }
    
    class Dog extends Animal {
        Dog(String name) {
            super(name);
        }
    }
    
    展开全文
  • 通配符通配符掩码

    千次阅读 2019-09-20 20:38:53
    路由中的通配符 1.路由配置中的通配符  在路由器的配置中,经常出现通配符。和子网掩码一样,都是以“0”或“1”表示,不过与子网掩码所表示的意思却不一样。  子网掩码所表示的是IP的网络位和主机位,而通配符...

    路由中的通配符

    1.路由配置中的通配符

      在路由器的配置中,经常出现通配符。和子网掩码一样,都是以“0”或“1”表示,不过与子网掩码所表示的意思却不一样。

      子网掩码所表示的是IP的网络位和主机位,而通配符则表示与IP是否匹配。

      通配符同样是32位,和IP地址一一对应,“0”位代表精确匹配,而“1“位代表不许匹配。例如路由器EIGRP的配置中:

      RouterA(config)#router eigrp 100

      RouterA(config-router)#network 10.0.0.0 0.0.0.255

      RouterA(config-router)#network 192.168.1.0 0.0.0.255

      10.0.0.0 0.0.0.255说明只要接口的IP地址是以“10”开头就参与EIGRP进程。同理的,192.168.1.0 0.0.0.255说明只要IP是以192.168.1开头的IP就符合。

    通配符掩码(wildcard-mask)

    1.路由器使用的通配符掩码(或反掩码)与源或目标地址一起来分辨匹配的地址范围,它跟子网掩码刚好相反。它像子网掩码告诉路由器IP地址的哪一位属于网络位一样,通配符掩码告诉路由器为了判断出匹配,它需要检查IP地址中的多少位。这个地址掩码对使我们可以只使用两个32位的号码来确定IP地址的范围。这是十分方便的,因为如果没有掩码的话,你不得不对每个匹配的IP客户地址加入一个单独的访问列表语句。这将造成很多额外的输入和路由器大量额外的处理过程。所以地址掩码对路由相当有用。

    2.在子网掩码中,将掩码的一位设成1表示IP地址对应的位属于网络地址部分。相反,在访问列表中将通配符掩码中的一位设成1表示I P地址中对应的位既可以是1又可以是0。有时,可将其称作“无关”位,因为路由器在判断是否匹配时并不关心它们。掩码位设成0则表示IP地址中相对应的位必须精确匹配。

    3.通配符掩码=255-掩码.255-掩码.255-掩码.255-掩码,即:255-255.255-255.255-255.255-248=0.0.0.7

     

    转载于:https://www.cnblogs.com/xinghen1216/p/11116017.html

    展开全文
  • 通配符,不止在Excel中有用到,在很多软件中都支持通配符。所以,我们有必要了解一下通配符相关的知识。什么是通配符通配符只有三个,常用的就两个。通配符是Excel中一个常用的辅助符号。通配符只有3种:问号? ...

    通配符,不止在Excel中有用到,在很多软件中都支持通配符。所以,我们有必要了解一下通配符相关的知识。

    什么是通配符?

    通配符只有三个,常用的就两个。

    通配符是Excel中一个常用的辅助符号。通配符只有3种:

    • 问号? 表示任意一个字符
    • 星号 * 表示任意多个字符
    • 波浪符 ~ 将已有通配符转为普通字符

    因此通配符可以表达许多不同的含义,比如:

    d746cf00e90f40f5b5a80eba35fcfff3.png

    通配符的在公式中的作用

    很多函数都支持通配符,比如Vlookup、Hlookup、Match、Sum、Sumif、Sumifs、Countif、Countifs、Maxifs、Minifs、Search、SearchB等,还有各种数据库函数,比如DSum、DCount、DCounta、DAverage、DMax、DMin等。

    如下图所示演示了几个函数使用通配符的用法。

    6cac544f84a2ffc1c87c56f303078fd9.png

    如下图所示,演示了数据库函数中使用通配符。

    76a538160d25e9d2e6c674d528097113.png

    有同学可能注意到了还有Sum函数,Sum函数怎样使用通配符呢?

    其实这个可以用在多表求和公式中,比如以下公式,表示对所有工作表的D列求总和。

    =SUM('*'!D:D)

    输入以下公式表示对所有工作表名称以“组装”开头的工作表的D列求和。

    =SUM('组装*’!D:D)

    通配符在查找替换中的作用

    三种用法要掌握

    1.查找替换"?"通配符使用

    要求:查找出销售员为两个字姓名并填充底纹颜色

    选中销售员区域调出查找替换对话框,在查找内容中输入“??”勾选单元格匹配,点击查找全部ctrl+a全选,关闭对话框,设置底纹填充颜色

    c603f05d538bd60f669f9ed892b64e72.gif

    2.查找替换“*”通配符使用

    要求:查找销售员姓“李”的名字填充底纹颜色

    选择销售员区域调出查找对话框,在查找内容中输入“李*”点击查找全部 ctrl+a全选,关闭对话框设置底纹颜色填充。

    500343dbdf8e7bfa537dd8ba5d5177cf.gif

    3.查找替换“~”通配符使用

    要求:查找工作表中“?”替换为“-”

    调出查找对话框,在查找内容中输入“~?”在替换为输入“-” 点击全部替换即可(无论是查找?或*或者~本身,都需要在前面加上~)

    d5c41162f623f7e1970f8db823ed5827.gif

    通配符在自动筛选中的作用

    关键时刻解决大问题

    比如,在自动筛选中设置自定义筛选,我们可以设置第一个条件为“等于”、“组装*”,第二个条件为“等于”、“*3*”。

    605213c8807fbd1442cbcbe787fb0365.png

    设置完之后,再次打开自定义筛选,就会发现条件分别变成了“开头是”、“组装”和“包含”、“3”。使用通配符省去了点开下拉列表选择匹配方式的麻烦。

    8f685d555249c0956dd16cccb676ffb8.png

    通配符在高级筛选中的作用

    比如有以下数据。

    06f63b0872a36ec0c4ac15a7e590c8c0.png

    在【数据】选项卡中点击“排序和筛选”组中的“高级”,进行以下设置,筛选出“总共有4个字符,第三个字符是电”的数据。

    cf4aa3b9d4fed26f55393ffd9cae1d77.png

    最终得到F1:G3区域的结果。

    98b163da8f5db79ca998c87a08c2622d.png

    通配符在VBA中的作用

    VBA可是很厉害的

    使用上图示例中的数据,我们写个简单的示例代码说明通配符在VBA中的使用。

    以下代码求第一列中结尾字符是“电视”的销量,其中f Cells(i, 1).Value Like "*电视" Then这一句中应用了通配符。

    Sub SumTV()

    Dim dblTotal As Double

    For i = 2 To 6

    If Cells(i, 1).Value Like "*电视" Then

    dblTotal = dblTotal + Cells(i, 2).Value

    End If

    Next

    MsgBox "电视的销量为 " & dblTotal

    End Sub

    关于通配符的使用,这里就先介绍这么多。

    展开全文
  • 详解SQL 通配符

    2021-01-19 21:44:36
    通配符可用于替代字符串中的任何其他字符。 SQL 通配符 在 SQL 中,通配符与 SQL LIKE 操作符一起使用。 SQL 通配符用于搜索表中的数据。 在 SQL 中,可使用以下通配符通配符 描述 % 替代 0 个或多个字符 ...
  • 通配符_SQL中的通配符

    2021-01-12 23:07:14
    SQL中可以使用通配符来搜索数据库中的数据,通配符可用于替代字符串中的任意字符。通配符介绍通配符可以配合LIKE操作符一起使用,通配符包括:%:替代 0 个或多个字符。_:替代一个字符。[charlist]:字符列中的任何...
  • 由于严格的泛型类型使用不方便,所以Java的设计者发明了一种巧妙但很安全的“解决方案”:通配符类型通配符概念在通配符类型中,允许类型参数发生变化。例如通配符类型Pair extends Employee>表示任何泛型Pair...
  • mysql通配符使用:w3cchool在mysql查询中,经常会用到通配符,而且mysql的通配符和pgsql是有所不同的,甚至mysql中还可以使用正则表达式。本文就为大家带来mysql查询中通配符的使用。SQL模式匹配:“_”匹配单个字符,...
  • 类型通配符

    2019-12-01 06:47:28
    类型通配符 类型通配符的作用 ​ 为了表示各种泛型List的父类,可以使用类型通配符 类型通配符的分类 类型通配符:<?> List<?>:表示元素类型未知的List,它的元素可以匹配任何的类型 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,138
精华内容 14,855
关键字:

通配符