开发中遇到的java小知识

  今天在优化一个功能的时候遇到了instr与substr函数,之前没有接触过这两个函数,但是今天无意中用到,一查才发现,真是实用的一对兄弟啊。

  先来说说substr函数,这个函数返回的是字符串的一部分。

  substr(string,start,length)

  其中string参数为必须参数,要截取的字符串内容。

  start为必须参数,为起始的位置,可以为正数也可以为负数,正数的话代表从在字符串的指定位置开始;负数代表从字符串结尾的指定位置开始;0代表在字符串中的第一个字符处开始。

   length不是必须参数,为截取的长度,正数代表从 start 参数所在的位置向后返回字符个数;负数代表从字符串末端指定位置向前返回字符个数。

  举个例子:

  substr("Hello World!",2,1)返回的是e

  substr("Hello World!",2)返回的是ello World!

  substr("Hello World!",-2,1)返回的是d

  substr("Hello World!",-2,-1)返回的是d!

  instr( string1, string2, start_position,nth_appearance ) 函数返回要截取的字符串在源字符串中的位置。

  string1源字符串,要在此字符串中查找。

  string2要在string1中查找的字符串 。

  start_position代表开始的位置。

  nth_appearance代表要查找第几次出现的string2. 此参数可选,如果省略,默认为 1.如果为负数系统会报错。

  举个例子:

  instr("Hello World!","o")返回的是5

  instr("Hello World!","o",1,2)返回的是8。解释一下,这句话代表"o"从字符串第一个位置开始查询,第二个“o”出现的位置。

  很有用的两个函数呢

  

时间: 2024-10-18 04:37:51

开发中遇到的java小知识的相关文章

android开发——Android开发中的47个小知识

1.判断sd卡是否存在  boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); 2.TextView部分文字设置颜色 TextView tv = new TextView(this); //添加css样式 tv.setText(Html.fromHtml("<font color="#ff0000">红色&l

一些在开发中不曾注意的小知识,只是怕以后忘了,有迹可查

1...//第一个参数为一个条件判断,如果为假,则抛出异常,显示第二个参数所描述的信息. NSAssert(self.headerImgHeight >= self.iconHeight && self.iconHeight > 0, @"图片高度应当大于头像高度,头像高度应当大于零"); 2.... decelerating  当滚动后,手指放开,但是还在继续滚动中,这个时候是 YES,其他是NO decelerationRate  设置手指放开后的减速率

java 小知识

1.JDK就是Java Development Kit.是 Java 语言的软件开发工具包(SDK),简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境.基本上每个学java的 人都会先在机器上装一个JDK,那他都包含哪几部分呢?让我们看一下JDK的安装目录.在目录下面有六个文件夹.一个src类库源码压缩包.和其他几个声明文件.其中,真正在运 行java时起作用的是以下四个文件夹:bin.include.lib. jre.现在我们可以看出这样一个关系,JDK包含JRE

java商城开发中说说影响java商城系统和jsp商城效率的原因

java是现在比较流行的软件开发语言,同时也是互联网应用中安全性相对较高的一种开发语言了.被很多的电子金融系统开发企业以及电子商务网站建设企业所看重.虽然说在如今的互联网开发中,它比较有优势,然而用得不当的话,反而会使电子商务网站建设的性能受到影响.电子商务网站建设企业,就从多年的java商城开发中说说影响java商城系统和jsp商城效率的原因. 1.缺乏正确的容量规划 容量规划是一个全面的和发展的过程标准,预测当前和未来的IT环境容量需求.制定合理的容量规划不仅会确保和跟踪当前IT生产能力和稳

iOS开发中一些有用的小代码

1.判断邮箱格式是否正确的代码: //利用正则表达式验证 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@&qu

android开发中,在java中如何使用c提供过来char*

这个char*如果是一般的字符串的话,作为string传回去就可以了.如果是含有'\0'的buffer,最好作为bytearray传出,因为可以制定copy的length,如果copy到string,可能到'\0'就截断了. 有两种方式传递得到的数据: 一种是在jni中直接new一个byte数组,然后调用函数(*env)->SetByteArrayRegion(env, bytearray, 0, len, buffer);将buffer的值copy到bytearray中,函数直接return

(转)Web开发中最致命的小错误

Web开发中最致命的小错误 现在,有越来越多所谓的“教程”来帮助我们提高网站的易用性.本文收集了一些在 Web 开发中容易出错和被忽略的小问题,并且提供了参考的解决方案,以便于帮助 Web 开发者更好的完善网站. 通过避免下面这些小错误,可以使得我们的网站变得更为友好. 错误1:表单的 label 标签跟表单字段没有关联 利用“for”属性允许用户单击 label 也可以选中表单中的内容.这可以扩大复选框和单选框的点击区域,非常实用. 错误2:logo 图片没有链接到主页 点击网站 logo 就

Android开发中padding使用一个小技巧

在安卓应用开发中,有时要用到状态按钮(可点击时与不可点击时的背景不相同),而且产品要求的按钮大小是固定的.在不同的手机上按钮的文字显示可能有些异常(主要是在给按钮做背景时很容易出现),此时我们怎么处理呢?我们可以用到padding这个属性. 看看小例子: --------------------------就一个按钮,但是background是用xml文件写的状态selector-------------------------------- <Button android:id="@+i

扒一扒系列之开发中常用的Java集合类(ArrayList篇 jdk 1.7)

关于这个系列,因为开发主要用的是java语言,一直想写写java开发中常用的一些类(虽然这才是开始的第三篇>_<),所有就起了“扒一扒”系列.这个系列会有框架,或者其他学到的东西.文章尽量做到简洁,用少的篇幅理顺相关的知识点和使用方法.废话少说,接下来扒一扒ArrayList这个集合类. 一.数据结构 让我们先看下ArrayList所在包的位置,在java.util.ArrayList中(如图1-1),它在jdk中的util中,说明它在开发中比较常用.从它的名字能看出数据结构为一个数组,看一下