【Java面试题】17 如何把一个逗号分隔的字符串转换为数组? 关于String类中split方法的使用,超级详细!!!
split 方法:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
stringObj.split([separator],[limit])
参数:stringObj 必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。
separator 可选项。字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽
略该选项,返回包含整个字符串的单一元素数组。 limit可选项。该值用来限制返回数组中的元素个数。
说明:split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解。separator 不作为任何数组元素的部分返回。
split 的实现直接调用的 matcher 类的 split 的方法。“ . ”在正则表达式中有特殊的含义,因此我们使用的时候必须进行转义"\\."
如果用竖线“|”分隔的话,将出现不可得到的结果,必须改为“\\|”
,+ * 不是有效的模式匹配规则表达式,用"//*" "//+"转义后即可得到正确的结果。
实例:
public class StrSplit2 {
public static void main(String[] args) {
String orgStr = "a,b,c,d,e,f";
String[] result1 = orgStr.split(",");
String[] result2 = orgStr.split(",", 4);
for (int a = 0; a < result1.length; a++) {
System.out.print(result1[a] + "\t");
}
System.out.println();
for (int a = 0; a < result2.length; a++) {
System.out.print(result2[a] + "\t");
}
System.out.println();
String[] aa = "aaa|bbb|ccc".split("\\|"); // 这样才能得到正确的结果
for (int i = 0; i < aa.length; i++) {
System.out.println(aa[i]);
}
System.out.println();
String[] bb = "aaaa*bbbb*cccc".split("\\*"); // 这样才能得到正确的结果
for (int i = 0; i < bb.length; i++) {
System.out.println(bb[i]);
}
String[] cc = "acount=? and uu =? or n=?".split("and|or"); // 这样才能得到正确的结果
for (int i = 0; i < cc.length; i++) {
System.out.println(cc[i]);
}
String[] dd = "aaa\\bbb\\bccc".split("\\\\");
for (int i = 0; i < dd.length; i++) {
System.out.println(dd[i]);
}
System.out.println();
String s = new String("01:大汽车");
String a[] = s.split(":");
System.out.println(a[0]);
System.out.println(a[1]);
System.out.println();
String str = "1one123two456obc";
String[] strs2 = str.split("o");
for (int i = 0; i < strs2.length; i++)
System.out.println("strs2[" + i + "] = " + strs2[i]);
}
}
【Java面试题】17 如何把一个逗号分隔的字符串转换为数组? 关于String类中split方法的使用,超级详细!!!的更多相关文章
- JAVA中string类的split方法
split([separator,[limit]])第一个参数为分隔符,可以是一个正则表达式,第二个参数为返回结果数组的长度
- mysql判断表里面一个逗号分隔的字符串是否包含单个字符串、查询结果用逗号分隔
1.mysql判断表里面一个逗号分隔的字符串是否包含单个字符串 : FIND_IN_SET select * from tablename where FIND_IN_SET(传的参数,匹配字段) 例 ...
- Java反射机制demo(五)—获得并调用一个类中的方法
Java反射机制demo(五)—获得并调用一个类中的方法 这个demo在使用反射机制操作属性之前,主要原因是因为在.class文件字节码中,方法排在属性的前面. 1,获得一个类中的方法 先看一下方法和 ...
- 第6章 Java类中的方法
1.如何定义java的方法 什么是方法:方法使用来解决一类问题的代码集合,是一个功能模块在类中定义个方法的方法是: 访问修饰符 返回值类型 方法名(参数列表){ 方法体 } 1.访问修饰符,是限制该方 ...
- Java Object类中toString方法的重写
Object类中的tostring方法的: 当我们输出一个对象时,实际是输出的是这个类中的tostring方法,是一个地址值,而不是类中的属性. 1 一:子类没有重写Object类中的toStrinn ...
- 逗号分隔的字符串转换为行数据(collection)
逗号分隔的字符串转换为行数据(collection) CREATE OR REPLACE FUNCTION "GET_STR_TAB" (v_str in varchar2) re ...
- java.lang.String 类的所有方法
java.lang.String 类的所有方法 方法摘要 char charAt(int index) 返回指定索引处的 char 值. int codePointAt(int index) 返回指定 ...
- Java中String类的format方法使用总结
可参考: http://www.cnblogs.com/fsjohnhuang/p/4094777.html http://kgd1120.iteye.com/blog/1293633 String类 ...
- Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用
1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把 ...
随机推荐
- Linux 共享库(动态库)
Linux 系统上有两类根本不同的 Linux 可执行程序.第一类是静态链接的可执行程序.静态可执行程序包含执行所需的所有函数 — 换句话说,它们是“完整的”.因为这一原因,静态可执行程序不依赖任何外 ...
- jQuery attr方法修改onclick值
了通过jQuery的attr修改onclick值. 代码: var js = "alert('B:' + this.id); return false;"; var newclic ...
- [na]win PPTP场景与搭建
这也是在不成熟时期的一种对windows远程访问的好奇. 现在看来没啥用了. 现在一般都用linux的openvpn+gg方案了 远程访问方案: ,端口映射 ,vpn 实现这种远程访问的协议:pptp ...
- angular -- $route API翻译
$route -$routeProvider服务 -依赖ngRoute模块 $route能够在路径发生改变的时候,渲染不同的视图,调用不同的控制器.它监测了$location.url(),然后根据路径 ...
- How to add elements to a List in Scala
Scala List FAQ: How do I add elements to a Scala List? This is actually a trick question, because yo ...
- http,javascript的编码解码
http,javascript的编码解码 请求与响应的编码应分开分析 两者的编码,解码处理是相对独立的流程 依赖于相对独立的header: request header, response heade ...
- 搞清tomcat中的编解码
http://www.xuebuyuan.com/1287083.html *********************************** 经常会被乱码问题搅得头晕脑胀.事实上,乱码问题涉及的 ...
- 一个activity
package com.example.administrator.Activity; import android.content.Context;import android.content.In ...
- Android开发日记(二)
HashMap<String, Object> map;定义一个HashMap用来传递字符 TextView textView_JobTitle=(TextView)findViewByI ...
- perl学习笔记(一)
关于Perl: Perl是一种高级.通用.直译式.动态的程序语言.最初设计者拉里·沃尔(Larry Wall)为了让在UNIX上进行报表处理的工作变得更方便,决定开发一个通用的脚本语言,而在1987年 ...