首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

急求java高手帮忙啊解决方法

2012-01-26 
急,求java高手帮忙啊有一字符串格式如下:(A(B)(C(D)(E))F) 字符串中的括号成对出现,写一java函数取出第N(

急,求java高手帮忙啊
有一字符串格式如下:(A(B)(C(D)(E))F) 字符串中的括号成对出现,写一java函数取出第N(以左括号出现的顺序来索引)对括号里的内容。

[解决办法]
找第n个左括号的下边
这个是答案
[解决办法]
上面的蓝字是链接啊
[解决办法]

Java code
public class Csdn1 {    public static void main(String[] args) {        String str = "(A(B)(C(D)(E))F)";        System.out.println(getContent(5, str));    }        public static String getContent(int n, String str) {                int start = -1, end = 0;        char[] arr = str.toCharArray();        int count = 0, j = 0;                for (int i = 0; i < arr.length; i++) {            if (arr[i] == '(') {                count++;                if (count == n) {                    start = i;//找到,记录开始位置                    j = 0; // 开始位置重置                }                if (i >= start) {                    j++; // 左( ++                }            }                        if (arr[i] == ')') {                                if (i >= start) {        //有开始位置才开始匹配结束                    j--; // 右( --                }                if (j == 0) {         //左右括号匹配完成后记录结束位置并跳出循环                    if (start == -1) {                        System.out.println("第" + n + "个元素不存在!");                    } else {                        end = i + 1;                        return str.substring(start, end);                    }                }            }        }        return "";    }} 

热点排行
Bad Request.