はじめに
今回は今まで逃げ続けてきたJavaの今までの復習と勉強ををしていきます。初めてプログラミングでJavaを触った結果、Javaに対して苦手意識が生まれたのですが、JavascriptやRubyを学んでから、学んだことがJava現場でも少しずつ活かされ始めて少しずつJavaも書けるようになり、Javaを今度こそ、しっかり学んでいきたいと思うようになりました。
今回はJavaにもともと、備わっているStringクラスのメソッドの復習をしていきます。使っている参考書は有名なこちらです。
String操作
1, equals
文字列比較の定番。
比較対象の文字列が等しいか見てくれる。小文字、大文字も見てくれる。
sample.java
public class string {
public static void main(String[] args){
boolean result;
int length;
boolean empty;
// 文字列の内容が正しいか調べる
String s1 = "this is Java";
String s2 = "This is Java";
String s3 = "これはJavaです";
result = s1.equals(s2);
System.out.println("s1 : s2 => "+result);
result = s1.equals(s3);
System.out.println("s1 : s3 => "+result);
result = s2.equals(s3);
System.out.println("s2 : s3 => "+result);
result = "this is Java".equals(s1);
System.out.println("this is Java : s1 => "+result);
}
}
結果.java
s1 : s2 => false
s1 : s3 => false
s2 : s3 => false
this is Java : s1 => true
2, equalsIgnoreCase
大文字、小文字関係なく同等の文字列か判定してくれる。
sample.java
result = s1.equalsIgnoreCase(s2);
System.out.println("s1 : s2 => "+result);
result = s1.equalsIgnoreCase(s3);
System.out.println("s1 : s3 => "+result);
result = s2.equalsIgnoreCase(s3);
System.out.println("s2 : s3 => "+result);
result = "this is Java".equalsIgnoreCase(s1);
System.out.println("this is Java : s1 => "+result);
結果.java
s1 : s2 => true
s1 : s3 => false
s2 : s3 => false
this is Java : s1 => true
3, length
文字列長を見てくれる。スペースも一文字として見ることに注意。
sample.java
length = s1.length();
System.out.println("\"this is Java\"の文字列長は"+length+"です。");
length = s2.length();
System.out.println("\"This is Java\"の文字列長は"+length+"です。");
length = s3.length();
System.out.println("\"これはJavaです\"の文字列長は"+length+"です。");
結果.java
"this is Java"の文字列長は12です。
"This is Java"の文字列長は12です。
"これはJavaです"の文字列長は9です。
4, isEmpty
文字列が空か判定。isEmptyの場合、空白が入っていると空扱いにならない。
isBlankの場合、空白が含まれていても空扱いになってしまう。
sample.java
empty = s1.isEmpty();
System.out.println("s1.isEmpty : " + empty);
empty = s2.isEmpty();
System.out.println("s2.isEmpty : " + empty);
empty = s3.isEmpty();
System.out.println("s3.isEmpty : " + empty);
empty = "".isEmpty();
System.out.println("\"\".isEmpty : " + empty);
empty = " ".isEmpty();
System.out.println("\" \".isEmpty : " + empty);
empty = "".isBlank();
System.out.println("\"\".isBlank : " + empty);
empty = " ".isBlank();
System.out.println("\" \".isBlank : " + empty);
結果.java
s1.isEmpty : false
s2.isEmpty : false
s3.isEmpty : false
"".isEmpty : true
" ".isEmpty : false
"".isBlank : true
" ".isBlank : true