substring :网络译义是截取字符串中的子串它的功能也是如翻译一样是 java中截取字符串的一个方法。
下面有一个例题代码如下:
public static void main(String[] args) { String names[] = {"Thomas", "Peter", "Joseph"}; String pwd[] = new String[3]; int idx = 0; try { for (String n : names) { pwd[idx] = n.substring(2, 6); idx++; } } catch(Exception e) { System.out.println("Invalid Name"); } for (String p : pwd) { System.out.println(p); } }
如代码所示,下面解剖一下这个代码: 创建了一个数值names 有三个数值分别是 "Thomas", "Peter", "Joseph" new了一个新的数组命名为pwd 创建变量idx为0;
下面进行了循环,遍历赋值等操作并进行了捕获异常。好现在抛开异常的知识点和增强for循环的知识点不管,直接来到 pwd[idx] = n.substring(2, 6);这一行代码 如何理解 可以知道,将names遍历第一次为Thomas string会自动转化成字符串,然后使用substring来讲n截取(2,6)下标为2(包括2)到6(不包括6)之间的字符串。得到的是omas 赋值给pwd[0]idx++;这样子pwd[0]就为omas ,第二次遍历为Peter 同样用substring来截取,由于Peter的长度只有五位,所以substring截取不到出现了异常。代码就直接走异常输出Invalid Name 走完trycatch块,进行下面的for循环遍历pwd数组 pwd数组 用脚指头想都可以想出来 它的值为 "pwd[0]=omas pwd[1]=null pwd[2] =null "。
所以控制台最后输入的值如下所示:
tostring简单用法:
String a = "abcdefg"; String a1 = a.substring(1,4); System.out.println(a1);
截取字符串 a中下标从1(包含1) 开始到 4 (不包含4) 结束的字符串 答案是 bcd
当截取的索引大于该字符串的长度时将会报错。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。