import java.io.*;
import java.util.*;
class Test{
public static void main
(String args
[]){ // equalsメソッドと==演算子の違い
// ==演算子はインスタンスが同じものかどうかを調べ、その内容を調べない。
// equalsメソッドは、インスタンスが違っても、内容が同じであればtrueを返す。
System.
out.
print( "str1 == str2 : " ); System.
out.
println( str1
== str2
); System.
out.
print( "str1.equals(str2) : " ); System.
out.
println( str1.
equals(str2
) );
// replaceの例(C言語などと違い、2バイト文字もJavaでは1文字である)
System.
out.
println( str1.
replace('理',
'里') );
// concatメソッドと+演算子
str2 = "abcde";
System.
out.
println("\"123\" + str2 : " + "123" + str2
); System.
out.
println("\"123\".concat(str2) : " + "123".
concat(str2
) );
// パス名からファイル名などを取り出す例
str1 = "C:\\Documents and Settings\\administrator\\デスクトップ\\新しいフォルダ\\test.java";
// 拡張子
try{
strAttribute = str1.substring( str1.lastIndexOf('.'), str1.length() );
strAttribute = "";
}
// パス名
try{
strPath = str1.substring( 0, str1.lastIndexOf('\\') );
strPath = "";
}
// ファイル名
try{
strFileName = str1.substring( str1.lastIndexOf('\\')+1, str1.length() );
strFileName = "";
}
System.
out.
println("拡張子:" + strAttribute
); System.
out.
println("パス名:" + strPath
); System.
out.
println("ファイル名:" + strFileName
); }
}
CglpbXBvcnQgamF2YS5pby4qOwppbXBvcnQgamF2YS51dGlsLio7CgpjbGFzcyBUZXN0ewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nIGFyZ3NbXSl7CiAgICAgICAgLy8gZXF1YWxz44Oh44K944OD44OJ44GoPT3mvJTnrpflrZDjga7pgZXjgYQKICAgICAgICAvLyA9Pea8lOeul+WtkOOBr+OCpOODs+OCueOCv+ODs+OCueOBjOWQjOOBmOOCguOBruOBi+OBqeOBhuOBi+OCkuiqv+OBueOAgeOBneOBruWGheWuueOCkuiqv+OBueOBquOBhOOAggogICAgICAgIC8vIGVxdWFsc+ODoeOCveODg+ODieOBr+OAgeOCpOODs+OCueOCv+ODs+OCueOBjOmBleOBo+OBpuOCguOAgeWGheWuueOBjOWQjOOBmOOBp+OBguOCjOOBsHRydWXjgpLov5TjgZnjgIIKICAgICAgICBTdHJpbmcgc3RyMSA9IG5ldyBTdHJpbmcoIuefouWPo+ecn+eQhiIpOwogICAgICAgIFN0cmluZyBzdHIyID0gbmV3IFN0cmluZygi55+i5Y+j55yf55CGIik7CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnQoICJzdHIxID09IHN0cjIgOiAiICApOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbiggc3RyMSA9PSBzdHIyICk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludCggInN0cjEuZXF1YWxzKHN0cjIpIDogIiApOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbiggc3RyMS5lcXVhbHMoc3RyMikgKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oKTsKCiAgICAgICAgLy8gcmVwbGFjZeOBruS+iyhD6KiA6Kqe44Gq44Gp44Go6YGV44GE44CB77yS44OQ44Kk44OI5paH5a2X44KCSmF2YeOBp+OBr++8keaWh+Wtl+OBp+OBguOCiykKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIHN0cjEucmVwbGFjZSgn55CGJywgJ+mHjCcpICk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCk7CgogICAgICAgIC8vIGNvbmNhdOODoeOCveODg+ODieOBqCvmvJTnrpflrZAKICAgICAgICBzdHIyID0gImFiY2RlIjsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlwiMTIzXCIgKyBzdHIyIDogIiArICIxMjMiICsgc3RyMiApOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiXCIxMjNcIi5jb25jYXQoc3RyMikgOiAiICsgIjEyMyIuY29uY2F0KHN0cjIpICk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCk7CgogICAgICAgIC8vIOODkeOCueWQjeOBi+OCieODleOCoeOCpOODq+WQjeOBquOBqeOCkuWPluOCiuWHuuOBmeS+iwogICAgICAgIFN0cmluZyAgc3RyRmlsZU5hbWU7CiAgICAgICAgU3RyaW5nICBzdHJQYXRoOwogICAgICAgIFN0cmluZyAgc3RyQXR0cmlidXRlOwogICAgICAgIHN0cjEgPSAiQzpcXERvY3VtZW50cyBhbmQgU2V0dGluZ3NcXGFkbWluaXN0cmF0b3JcXOODh+OCueOCr+ODiOODg+ODl1xc5paw44GX44GE44OV44Kp44Or44OAXFx0ZXN0LmphdmEiOwoKICAgICAgICAvLyDmi6HlvLXlrZAKICAgICAgICB0cnl7CiAgICAgICAgICAgIHN0ckF0dHJpYnV0ZSA9IHN0cjEuc3Vic3RyaW5nKCBzdHIxLmxhc3RJbmRleE9mKCcuJyksIHN0cjEubGVuZ3RoKCkgKTsKICAgICAgICB9Y2F0Y2goSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbiBlKXsKICAgICAgICAgICAgc3RyQXR0cmlidXRlID0gIiI7CiAgICAgICAgfQoKICAgICAgICAvLyDjg5HjgrnlkI0KICAgICAgICB0cnl7CiAgICAgICAgICAgIHN0clBhdGggPSBzdHIxLnN1YnN0cmluZyggMCwgc3RyMS5sYXN0SW5kZXhPZignXFwnKSApOwogICAgICAgIH1jYXRjaChJbmRleE91dE9mQm91bmRzRXhjZXB0aW9uIGUpewogICAgICAgICAgICBzdHJQYXRoID0gIiI7CiAgICAgICAgfQogICAgICAgIC8vIOODleOCoeOCpOODq+WQjQogICAgICAgIHRyeXsKICAgICAgICAgICAgc3RyRmlsZU5hbWUgPSBzdHIxLnN1YnN0cmluZyggc3RyMS5sYXN0SW5kZXhPZignXFwnKSsxLCBzdHIxLmxlbmd0aCgpICk7CiAgICAgICAgfWNhdGNoKEluZGV4T3V0T2ZCb3VuZHNFeGNlcHRpb24gZSl7CiAgICAgICAgICAgIHN0ckZpbGVOYW1lID0gIiI7CiAgICAgICAgfQoKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIuaLoeW8teWtkO+8miIgKyBzdHJBdHRyaWJ1dGUpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi44OR44K55ZCN77yaIiArIHN0clBhdGgpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi44OV44Kh44Kk44Or5ZCN77yaIiArIHN0ckZpbGVOYW1lKTsKICAgIH0KfQoKCQ==