日期:2014-05-20  浏览次数:20725 次

求高手点拨:一个Java的代码书写,所反映的Java的底层知识.
高手,您好:
    我是一名学习软件工程的学生,今天我写了一个小测试程序,如下:
    

public class Test32 {

public Test32(){
String str = "cjco$cjcocjco$cjcjcoco$cococjcjcjco";
String[] str1 = {"","","",""};
str1 = str.split("$");
for(int i=0;i<str1.length;i++){
System.out.println(str1[i]);
}
}
public static void main(String[] args){
new Test32();
}
}
 
    得到的“console窗口中的结果”如下:
    
    我将上面的代码中的第7行修改为:
    str1 = str.split("\$");
    之后,得到的“编译器”窗口中的内容如下:
    
    我有将上面的代码中的第7行代码修改为:
    str1 = str.split("\\$");
    之后,得到的“console”窗口中的内容如下:
    
    这里的三个窗口的输出,反映出了关于“转义字符”的输出逻辑和Java在此部分的语法.
    弟我在这一部分,学得不是很扎实,希望能够得到高手的点拨:
    这三个窗口中的内容,说明了“Java的语法对于转义字符”是“怎样进行控制和设计的”....?
    在我的程序中的split()函数中:
    为什么我用“一个$”符号,面向字符串中的“$分隔符”的“分隔标记”, 会产生:“输出的效果无视我写的split()函数”?
    为什么我用“一个\$”符号,面向字符串中的“$分隔符”的“分隔标记”,会产生:
    无法通过MyEclipse的编译,的结果...?
    为什么我用“一个\\$”符号,面向字符串中的“$分隔符”的“分隔标记”,会产生:
    “完美输出我想要的答案”的结果....?
    希望高手能够从:
    “计算机体系的"转义字符"以及计算机体系处理"转义字符的底层设计"和"计算机储存数据的结构"以及"计算机硬件在进行上述操作过程中的反应"”来进行弟我的这个问题的讲解.....
    希望得到高手的详细解答..
    谢谢高手!!
    七十分奉上!!
                                                          一位日日夜夜向着理想奔跑的筑梦者
                                                         2013年9月9日星期一早晨5点01分
java myeclipse 设计