Here you can find the source of splitString(CharSequence s, char delim)
Parameter | Description |
---|---|
s | the string to split |
delim | the delimiter character |
public static List<String> splitString(CharSequence s, char delim)
//package com.java2s; /*// ww w . j av a2 s .c o m * Copyright (c) 2005, Mikael St?ldal * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * 3. Neither the name of the author nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * * Note: This is known as "the modified BSD license". It's an approved * Open Source and Free Software license, see * http://www.opensource.org/licenses/ * and * http://www.gnu.org/philosophy/license-list.html */ import java.util.*; public class Main { /** * Split a string into a list of substrings using a specified * character as delimiter. Will return empty strings in the list * if the there are several adjacent delimiter characters. * * @param s the string to split * @param delim the delimiter character * * @return the splitted string */ public static List<String> splitString(CharSequence s, char delim) { StringBuffer sb = new StringBuffer(s.length()); List<String> list = new ArrayList<String>(); for (int i = 0; i < s.length(); i++) { char ch = s.charAt(i); if (ch == delim) { list.add(sb.toString()); sb.setLength(0); } else { sb.append(ch); } } list.add(sb.toString()); return list; } }