isEmpty和isBlank的区别在于 isEmpty仅仅是判断空和长度为0字符串 isBlank判断的是空,长度为0,空白字符(包括空格,制表符\t,换行符\n,换页符\f,回车\r)组成的字符串。...) = false StringUtils.isEmpty(“aaa”) = false StringUtils.isEmpty(“\t \n \r \f”) = false StringUtils.isBlank...(null) = true StringUtils.isBlank(“”) = true StringUitls.isBlank(" ") = true StringUtils.isEmpty(“aaa
StringUtils中isEmpty和isBlank的区别 StringUtils方法的操作对象是java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null...StringUtils中全是静态方法。...(”") = true StringUtils.isBlank(" “) = true StringUtils.isBlank(” “) = true StringUtils.isBlank(”\...t \n \f \r") = true //对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符 StringUtils.isBlank("\b") = false...//"\b"为单词边界符 StringUtils.isBlank(“bob”) = false StringUtils.isBlank(" bob ") = false
除了构造器,StringUtils中一共有130多个方法,并且都是static的,所以我们可以这样调用StringUtils.xxx() 1. public static boolean isEmpty...n \f \r") = true //对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符 StringUtils.isBlank("\b") = false //"...(whitespace),如果输入为null则返回null 下面是示例(注意和trim()的区别): StringUtils.strip(null) = null StringUtils.strip("...(whitespace),如果变为null或"",则返回null 下面是示例(注意和trimToNull()的区别): StringUtils.stripToNull(null) = null StringUtils.stripToNull...(whitespace),如果变为null或"",则返回"" 下面是示例(注意和trimToEmpty()的区别): StringUtils.stripToNull(null) = "" StringUtils.stripToNull
标签:Excel公式,SUMPRODUCT函数 基于列中的条件求和通常使用SUMIF函数或者SUMIFS函数,特别是涉及到多条件求和时。然而,随着条件的增多,公式将会变得很长,难以理解。...而使用SUMPRODUCT函数,可以判断同一列中的多个条件且公式简洁。 如下图1所示的示例。...图1 如果想要求东区超市1和超市2的销售额之和,可以使用公式: =SUMPRODUCT(($A$2:$A$12="东区")*(($B$2:$B$12="超市1")+($B$2:$B$12="超市2"))...也可以使用下面更简洁的公式: =SUMPRODUCT(($A$2:$A$12="东区")*(($B$2:$B$12={"超市1","超市2"}))*($C$2:$C$12)) 公式中,使用了花括号,允许在其中放置多个条件...,因此,如果需要满足的条件更多的话,就可以通过逗号分隔符将它们放置在花括号中,公式更简洁。
简介 StringUtils在commons-lang-2.2.jar包中org.apache.commons.lang.StringUtils; 顾名思义,StringUtils主要的操作对象是字符串...,共有130多个静态方法,所以我们可以直接用StringUtils.xxx()调用。...\f \r") = true //对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符 StringUtils.isBlank("\b") = false //"\...b"为单词边界符 StringUtils.isBlank("bob") = false StringUtils.isBlank(" bob ") = false 区别 isEmpty()和isBlank...isBlank() isBlank的范围比isEmpty的范围大。
如下图1所示,我们在单元格区域中使用数组公式生成序号,这样,使用者就不能够随意删除其中一个单元格中的序号,只能选中该区域后全部删除。 ? 图1 下面是创建上面的数组公式的步骤: 1....当你试图删除单元格区域A2:A6中的某个单元格中的内容、删除整行等时,会导致下图2所示的错误。 ? 图2 2. 按Ctrl+/键可以选择当前数组公式所在的区域。 3. 有两种方法删除数组公式区域内容。...如果需要编辑数组公式,则可以在该数组公式区域中编辑任一单元格中的公式,然后按Ctrl+Shift+Enter键。 5. 选择数组公式区域的任意单元格,在公式栏中都会看到相同的公式。 6....上例中的数组公式可以归纳为一个求序号的公式构造: ROW(单元格区域)-ROW(单元格区域中的第一个单元格)+1 这个公式构造可以作为更高级的数组公式中的元素。...欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。 完美Excel社群2020.9.2动态 #VBA# 增强的CELL函数和INFO函数
在实际工作中,我们经常需要从某列返回数据,该数据对应于另一列满足一个或多个条件的数据中的最大值。 如下图1所示,需要返回指定序号(列A)的最新版本(列B)对应的日期(列C)。 ?...IF子句,不仅在生成参数lookup_value的值的构造中,也在生成参数lookup_array的值的构造中。...A10=F1)*B2:B10)),C2:C10) 先看看公式中的: (A2:A10=F1)*B2:B10 转换为: ({12345;12345;12345;12345;12345;54321;54321...:B10 转换为: ({FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE})*B2:B10 得到: {0;0;0;0;0;3;4;1;2} 现在,来到公式中巧妙的部分...由于数组中的最小值为0.2,在数组中的第7个位置,因此上述公式构造的结果为: {0;0;0;0;0;0;1;0;0;0} 获得此数组后,我们只需要从列C中与该数组出现的非零条目(即1)相对应的位置返回数据即可
latex中想要给每种情况分别编号成(a)(b),如下所示: 首先需要引入的包有: %大括号子公式编号需要用到的包 \usepackage{ CJK} \usepackage{...indentfirst} \usepackage{ amsmath} \usepackage{ cases} 输入的代码有: \begin{ subnumcases} {...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
大家好,又见面了,我是你们的朋友全栈君。 写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。...这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。...(" 扬帆向海 ")); // false } } 3、总结 isEmpty()方法没有忽略空格,是以是否为空和是否存在为判断依据; isBlank()方法增加了字符串为空格、...制表符的判断。...即isBlank()的判断范围更大,它在isEmpty()方法的基础上,包括了空字符的判断。在实际开发中,isBlank()方法更加常用。 由于水平有限,本博客难免有不足,恳请各位大佬不吝赐教!
由于 String 在 Java 中底层是通过 char 数组去存储字符串的,所以空字符串对应的 char 数组表现形式为 private final char value[] = new char[...PS:最近在写项目的过程中,发现很多地方要做判空操作的,然后有时候可能调用链比较长,如果用 if else 来判空的话,光判空代码就会比较多,这样对后期维护性不好,而且我们自己判空可能会没有考虑某个场景...比如:从 Map 中取一个 key 的值,可以用 MapUtils 这个类;对字符串判空使用 StringUtils 这个类;对集合进行判空使用 CollectionUtils 等等。...} else { return true; } } 结论 通过以上代码对比我们可以看出: 1.isEmpty 没有忽略空格参数,是以是否为空和是否存在为判断依据...2.isBlank 是在 isEmpty 的基础上进行了为空(字符串都为空格、制表符、tab 的情况)的判断。(一般更为常用) 大家可以看下面的例子去体会一下。
的存在, come on ,让我们一起来探索org.apache.commons.lang3.StringUtils;这个工具类. isEmpty系列 StringUtils.isEmpty() 是否为空...可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=false StringUtils.isEmpty(null) = true StringUtils.isEmpty...() 是否为真空值(空格或者空值) StringUtils.isBlank(null) = true StringUtils.isBlank("") = true StringUtils.isBlank...(String) to isBlank(CharSequence) */ public static boolean isBlank(final CharSequence cs) { int...isAnyBlank(css); } StringUtils的其他方法 可以参考官方的文档,里面有详细的描述,有些方法还是很好用的. https://commons.apache.org/proper
本次的练习是:如下图1所示,左边的表格是一个测试表,学生要根据单元格A3:A12中的国家名,在列B和列C相应的单元格中填写该国家的首都和使用的货币。右边的表格是正确答案。 ?...图1 要求在单元格C1中输入一个公式,计算学生答对的数量。在图1所示的示例中,答案是4,也就是说左边的表格中有四行是正确的,如表中高亮显示的行。 公式要求: 1....因为公式1理论上有可能出错,例如,如果表中同时存在France-Paris-Euro和Franc-Eparise-Uro(不存在该名字的国家、城市或货币),则会得出不正确的结果。...,因此,公式1的结果为: 4 再看看更为健壮的公式2: =SUM(COUNTIFS(A3:A12,E3:E12,B3:B12,F3:F12,C3:C12,G3:G12)) 注意,当参数criteria指定的值包含多个元素时...进一步说,这里有多个参数criteria指定的值都由多个元素(E3:E12、F3:F12、G3:G12)组成,Excel执行一系列单独的COUNTIFS计算。
() 是否为真空值(空格或者空值) StringUtils.isBlank(null) = true StringUtils.isBlank("") = true StringUtils.isBlank...isAnyBlank(css); } StringUtils的其他方法 可以参考官方的文档,里面有详细的描述,有些方法还是很好用的。...checks if a String contains text 检查字符串是否包含文本 Trim/Strip removes leading and trailing whitespace 删除前导和尾随空格...ContainsOnly/ContainsNone/ContainsAny does String contains only/none/any of these characters 字符串是否仅包含/无/这些字符中的任何一个...IsNumeric/IsWhitespace/IsAsciiPrintable checks the characters in a String 检查字符串中的字符 DefaultString protects
在我们编写公式时,特别是编写数组公式时,往往会生成由TRUE/FALSE值组成的中间数组。...在Excel中,TRUE值等于1,FALSE值等于0,那么如何将TRUE/FALSE值转换成1/0呢?最常用的方法是使用数学运算。...常使用下列三种数学运算将TRUE和FALSE转换为等效的数字: 1. 与1相乘: {TRUE,FASLE}*1={1,0} 2. 与0相加: {TRUE,FALSE}+0={1,0} 3....使用双减号: --{TRUE,FALSE}=(-1)*(-1)*{TRUE,FALSE}=1*{TRUE,FALSE}={1,0} 例如,在《Excel公式练习63:求数值中的各个数字之和》中,我们可以使用下面的公式...有时候,公式本身就会与生成的数字相乘,这样也会将TRUE/FALSE进行相应的数字转换。至于如何使用,具体情况灵活使用相应的方法。
如果希望进一步操纵某二维数组的元素,则需要使用这种技术。例如,由于某种原因,在某种情形下,需要将二维数组中的每个元素传递给一个或多个参数进行进一步处理。...我们知道,可以给函数传递多个单元格。...,传递给INDEX函数的数组(用于参数row_num和参数column_num的数组)都是相同的向量类型(均为列向量),从而确保了由INDEX产生的数组也是这种向量类型。...根据其定义,列向量当然是一维的。这里使用的技术请参阅《Excel公式技巧03:INDEX函数,给公式提供数组》、《Excel公式练习44:从多列中返回唯一且按字母顺序排列的列表》。...可以看出,INDEX结构具有不可否认的优势,不仅可以将其用于重新定义工作表区域的维度,还可以重新定义公式中某些其他子函数产生的数组的维度。
基本用法 假设我们要对 df 中的 x 和 y 列进行归一化处理,在不使用 scale() 函数的情况下,我们可能会手写一个函数: scale2 <- function(x) { (x - mean...df, ~ (.x - mean(.x)) / sd(.x)), purrr::map_df(df, ~ (. - mean(.)) / sd(.)) ) #> [1] TRUE 在理解了上述操作后多个参数的使用也就不难理解了...计算残差 最开始的图形显示了 x 和 y 是一个线性关系,假设我们目前有一个任务:构建回归模型并手动计算残差,绘制结果图。 我们来看看如何操作。...$x 和 df$y,这里使用了 dplyr 包的 mutate() 语境,所以可以直接写列名。...在公式中,我们可以直接使用前面已经定义的变量,这里是 cfs。
在《Excel公式练习32:将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格》中,我们讲述了一种方法,给定由多个列组成的单元格区域,从该区域返回由所有非空单元格组成的单个列。...可以很容易地验证,在该公式中的单个条件可以扩展到多个条件,因此,我们现在有了从一维数组和二维数组中生成单列列表的方法。 那么,可以更进一步吗?...“三维”是经常应用于Excel中特定公式的通用术语,这些公式不仅可以对单列或单行进行操作,也可以对由多列或多行组成的单元格区域进行操作,还可以有效地对多个工作表进行操作。...1、3和4对应于工作表Sheet1列D中为“Y”的相对行号。...k的值,即在工作表Sheet1中匹配第1、第2和第3小的行,在工作表Sheet2中匹配第1和第2小的行,在工作表Sheet3中匹配第1小的行。
我们给出了基于在多个工作表给定列中匹配单个条件来返回值的解决方案。本文使用与之相同的示例,但是将匹配多个条件,并提供两个解决方案:一个是使用辅助列,另一个不使用辅助列。 下面是3个示例工作表: ?...图3:工作表Sheet3 示例要求从这3个工作表中从左至右查找,返回Colour列中为“Red”且“Year”列为“2012”对应的Amount列中的值,如下图4所示的第7行和第11行。 ?...图4:主工作表Master 解决方案1:使用辅助列 可以适当修改上篇文章中给出的公式,使其可以处理这里的情形。首先在每个工作表数据区域的左侧插入一个辅助列,该列中的数据为连接要查找的两个列中数据。...16:使用VLOOKUP函数在多个工作表中查找相匹配的值(1)》。...C1,Arry2,,,))=$B11),0)) 由于这里的两个公式结构: T(OFFSET(Sheet3!B1,Arry2,,,))=$A11 和 N(OFFSET(Sheet3!
但是,如果在多个工作表中查找值并返回第一个相匹配的值时,可以使用VLOOKUP函数吗?本文将讲解这个技术。...图3:工作表Sheet3 示例要求从这3个工作表中从左至右查找,返回Colour列中为“Red”对应的Amount列中的值,如下图4所示。 ?...B1:D10"),3,0) 其中,Sheets是定义的名称: 名称:Sheets 引用位置:={"Sheet1","Sheet2","Sheet3"} 在公式中使用的VLOOKUP函数与平常并没有什么不同...公式中的: COUNTIF(INDIRECT("'"&Sheets&"'!...B:B"}),$A3) INDIRECT函数指令Excel将这个文本字符串数组中的元素转换为单元格引用,然后传递给COUNTIF函数,同时单元格A3中的值作为其条件参数,这样上述公式转换成: {0,1,3
今天的博客文章是我几年前做的一个关于寻找图像中最亮点的教程的后续。 我之前的教程假设在图像中只有一个亮点你想要检测... 但如果有多个亮点呢?...如果您想在图像中检测多个亮点,代码会稍微复杂一点,但不会太复杂。不过不用担心:我将详细解释每一个步骤。 看看下面的图片: ? 在这幅图中,我们有五个灯泡。...本项目的关键步骤是对上图中的每个区域进行标记,然而,即使在应用了腐蚀和膨胀后,我们仍然想要过滤掉剩余的小块儿区域。...下面我提供了一个GIF动画,它可视化地构建了每个标签的labelMask。使用这个动画来帮助你了解如何访问和显示每个单独的组件: ? 然后第15行对labelMask中的非零像素进行计数。...如果numPixels超过了一个预先定义的阈值(在本例中,总数为300像素),那么我们认为这个斑点“足够大”,并将其添加到掩膜中。 输出掩模如下图: ?
领取专属 10元无门槛券
手把手带您无忧上云