22
String - 文文文 2009 文 10 文 9 文 7ADD2116 文文文文

String - 文字列

  • Upload
    linnea

  • View
    28

  • Download
    1

Embed Size (px)

DESCRIPTION

String - 文字列. 2009 年 10 月 9 日 7ADD2116  佐藤洋輔. はじめに. 各自の「 Java 」フォルダの中に、「 String 」フォルダを作ってください。 手順: 1. 「 Tera Term 」を起動 2. 「 cd Java 」と入力 3. 「 mkdir String 」と入力 4. 「 cd String 」と入力. 1. 文字列の生成( 1 ). String とは?   →文字列を入れる型。   文字列は「 ” ” 」で囲む。 int や byte とは違い、大文字で始まる。 - PowerPoint PPT Presentation

Citation preview

Page 1: String -  文字列

String - 文字列

2009 年 10 月 9 日7ADD2116  佐藤洋輔

Page 2: String -  文字列

はじめに 各自の「 Java 」フォルダの中に、

「 String 」フォルダを作ってください。 手順:   1. 「 Tera Term 」を起動   2. 「 cd Java 」と入力   3. 「 mkdir String 」と入力   4. 「 cd String 」と入力

Page 3: String -  文字列

1. 文字列の生成( 1 ) String とは?  →文字列を入れる型。  文字列は「” ”」で囲む。   int や byte とは違い、大文字で始ま

る。    例) String a = "abc";

Page 4: String -  文字列

1. 文字列の生成( 2 ) 「 Append.java 」を実行してみま

しょう。

Page 5: String -  文字列

2. 文字列の比較( 1 ) 数値の場合は「 a == b 」のように表記

し比較するが、文字列の場合はそうはいかない。

そこで比較用のメソッド「 equals() 」を使う。

  例) a.equals(b)    文字列 a と b が等しいなら true

Page 6: String -  文字列

2. 文字列の比較( 2 ) 「 Equal.java 」を実行してみましょ

う。

Page 7: String -  文字列

演習①(テキストの演習 2 ) Equal.java を (equals を用いて ) 書き

換え、以下のような結果になるEqual2.java を作りなさい。

Page 8: String -  文字列

演習① 解答例public class Equal2{

public static void main(String argv[]){String s1 = "Takuma";String s2 = "Akito";String s3 = "Takuma";String s4 = new String(s1);

System.out.println(s1 + "==" + s2 + " : " +(s1 == s2));System.out.println(s1 + "==" + s1 + " : " +(s1 == s1));System.out.println(s1 + "==" + s3 + " : " +(s1 == s3));System.out.println(s1 + "==" + s4 + " : "

+s1.equals(s4));}

}

Page 9: String -  文字列

3. 文字列の操作( 1 )a,b を String としたとき、 a.length()   文字列 a の長さを求める。 a.charAt(int i)   文字列 a の i 番目の文字を求める。 a.indexOf(String x)   文字列 a の最初に文字 x が現れる場所を求める。 a.substring(int i, int j)   文字列 a の i 番目から j 番目までの部分文字列を

求める。

Page 10: String -  文字列

3. 文字列の操作( 2 ) 「情報メディア」という文字列があった

として、これを「 substring 」で指定したときと「 indexOf 」で指定したときとでは示している位置が異なる。

│情│報│メ│デ│ィ│ア│

a.substring(0, 4) 出力結果は「情報メデ」・・・

a.indexOf( デ ) 出力結果は「3」・・・

3→

0←

Page 11: String -  文字列

演習②( 1 )(テキストの演習 3 )

文字列 “259-1292 神奈川県平塚市北金目 1117” について

1. 何文字あるか数えよ。 2. 3 文字目を表示せよ。 3. 郵便番号だけを表示せよ。 4. 県名だけを表示せよ。 5. 県名だけを除いて表示せよ。

Page 12: String -  文字列

演習②( 2 )

Page 13: String -  文字列

演習② 解答例public class Tokai{

public static void main(String argv[]){String a = "259-1292 神奈川県平塚市北金目 1117";

System.out.println(a);System.out.println(" 文字列の長さ: " + a.length() + " 文字 ");System.out.println("3 文字目: " + a.charAt(2));System.out.println(" 郵便番号: " + a.substring(0, 8));System.out.println(" 県名: " + a.substring(8, 12));System.out.println(" 県名以外: " + a.substring(0, 8) + a.substring(12, 22));}

}

Page 14: String -  文字列

4. 文字列の走査( 1 ) charAt を使うと文字列を一文字づつ分

解することが出来る。

 例) s="abc" を s.charAt(0) + s.charAt(1) +

s.charAt(2) と書くと“ abc” が表示される。

Page 15: String -  文字列

4. 文字列の走査( 2 ) 「 Forward.java 」を実行してみま

しょう。

Page 16: String -  文字列

演習③(テキストの演習 4 ) Forward を修正し、入力文字を逆順に

する Reverse.java を書きなさい。

Page 17: String -  文字列

演習③ 解答例public class Reverse{

public static void main(String argv[]){String s = argv[0];int i;

for(i = s.length()-1; i > -1; --i){System.out.print(s.charAt(i));

}System.out.println();

}}

Page 18: String -  文字列

5. バイト配列 String s から byte の配列 b[] への変換   byte b[] = s.getBytes(); byte の配列から文字列への変換   String s = new String(b); 整数 (int a) から文字列への変換   String s = new String(a);   ( もしくは, String s = "" + a;) 文字列から整数への変換   int a = Integer.parseInt(s);

Page 19: String -  文字列

6. 多次元配列

int x[][] = {{1, 2}, {3, 4}}; これは 2 行 2 列の行列を表現している。 x[0][0] = 1, x[0][1] = 2, x[1][0] =

3, x[1][1] = 4 のように初期化される。 x[0] は {1,2} という整数の配列であ

り、 x[1] は {3,4} の配列である。

Page 20: String -  文字列

宿題① テキストの宿題 3 入力した単語を以下のように表示する

「 Display.java 」を作りなさい。

kiknkiknkiknkiknkiknkiknkikn kiknkiknkiknkikn kiknkiknkikn kiknkikn kiknkiknkiknkiknkikn kiknkiknkiknkiknkiknkikn kiknkiknkiknkiknkikn kiknkikn kiknkiknkikn kiknkiknkiknkikn kikn kiknkiknkiknkiknkiknkikn

実行例)$ java Display kikn

出力結果例)

Page 21: String -  文字列

宿題②(オリジナル) 任意の文字列を入力し、そこに「 moj

i 」という文字列があった場合は「 true 」を表示し、無かった場合は「 false 」を表示する「 Moji.java 」を作りなさい。

実行例)$ java Moji abcdefgmojihij

出力結果例)true

Page 22: String -  文字列

宿題③(オリジナル) 下記の配列を小さい順に表示する

「 Hairetsu.java 」を作りなさい。 ただし、必ず for 文と if 文を使うこと。

   { 12, 67, 6, 29, 77, 41 }

実行例)$ java Hairetsu

出力結果例)61229416777