You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Loic Guibert (JIRA)" <ji...@apache.org> on 2015/04/28 17:27:06 UTC
[jira] [Updated] (LANG-1119) Add rotate(string, int) method to
StringUtils
[ https://issues.apache.org/jira/browse/LANG-1119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Loic Guibert updated LANG-1119:
-------------------------------
Description:
Add a method to rotate (circular shift) a String into StringUtils.
{code:java}
/**
* <p>Rotate (circular shift) a String of {@code shift} characters.</p>
* <ul>
* <li>If {@code shift > 0}, right circular shift (ex : ABCDEF => FABCDE)</li>
* <li>If {@code shift < 0}, left circular shift (ex : ABCDEF => BCDEFA)</li>
* </ul>
*
* <pre>
* StringUtils.rotate(null, *) = null
* StringUtils.rotate("", *) = ""
* StringUtils.rotate("abcdefg", 0) = "abcdefg"
* StringUtils.rotate("abcdefg", 2) = "fgabcde"
* StringUtils.rotate("abcdefg", -2) = "cdefgab"
* StringUtils.rotate("abcdefg", 7) = "abcdefg"
* StringUtils.rotate("abcdefg", -7) = "abcdefg"
* StringUtils.rotate("abcdefg", 9) = "fgabcde"
* StringUtils.rotate("abcdefg", -9) = "cdefgab"
* </pre>
*
* @param str the String to rotate, may be null
* @param shift number of time to shift (positive : right shift, negative : left shift)
* @return the rotated String,
* or the original String if {@code shift == 0},
* or {@code null} if null String input
*/
public static String rotate(String str, int shift);
{code}
See PR #71 : https://github.com/apache/commons-lang/pull/71
was:
Add a method to rotate (circular shift) a String into StringUtils.
{code:java}
/**
* <p>Rotate (circular shift) a String of {@code shift} characters.</p>
* <ul>
* <li>If {@code shift > 0}, right circular shift (ex : ABCDEF => FABCDE)</li>
* <li>If {@code shift < 0}, left circular shift (ex : ABCDEF => BCDEFA)</li>
* </ul>
*
* <pre>
* StringUtils.rotate(null, *) = null
* StringUtils.rotate("", *) = ""
* StringUtils.rotate("abcdefg", 0) = "abcdefg"
* StringUtils.rotate("abcdefg", 2) = "fgabcde"
* StringUtils.rotate("abcdefg", -2) = "cdefgab"
* StringUtils.rotate("abcdefg", 7) = "abcdefg"
* StringUtils.rotate("abcdefg", -7) = "abcdefg"
* StringUtils.rotate("abcdefg", 9) = "fgabcde"
* StringUtils.rotate("abcdefg", -9) = "cdefgab"
* </pre>
*
* @param str the String to rotate, may be null
* @param shift number of time to shift (positive : right shift, negative : left shift)
* @return the rotated String,
* or the original String if {@code shift == 0},
* or {@code null} if null String input
*/
public static String rotate(String str, int shift);
{code}
> Add rotate(string, int) method to StringUtils
> ---------------------------------------------
>
> Key: LANG-1119
> URL: https://issues.apache.org/jira/browse/LANG-1119
> Project: Commons Lang
> Issue Type: New Feature
> Components: lang.*
> Reporter: Loic Guibert
>
> Add a method to rotate (circular shift) a String into StringUtils.
> {code:java}
> /**
> * <p>Rotate (circular shift) a String of {@code shift} characters.</p>
> * <ul>
> * <li>If {@code shift > 0}, right circular shift (ex : ABCDEF => FABCDE)</li>
> * <li>If {@code shift < 0}, left circular shift (ex : ABCDEF => BCDEFA)</li>
> * </ul>
> *
> * <pre>
> * StringUtils.rotate(null, *) = null
> * StringUtils.rotate("", *) = ""
> * StringUtils.rotate("abcdefg", 0) = "abcdefg"
> * StringUtils.rotate("abcdefg", 2) = "fgabcde"
> * StringUtils.rotate("abcdefg", -2) = "cdefgab"
> * StringUtils.rotate("abcdefg", 7) = "abcdefg"
> * StringUtils.rotate("abcdefg", -7) = "abcdefg"
> * StringUtils.rotate("abcdefg", 9) = "fgabcde"
> * StringUtils.rotate("abcdefg", -9) = "cdefgab"
> * </pre>
> *
> * @param str the String to rotate, may be null
> * @param shift number of time to shift (positive : right shift, negative : left shift)
> * @return the rotated String,
> * or the original String if {@code shift == 0},
> * or {@code null} if null String input
> */
> public static String rotate(String str, int shift);
> {code}
> See PR #71 : https://github.com/apache/commons-lang/pull/71
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)