1 / 22

String - 文字列

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

linnea
Download Presentation

String - 文字列

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. String - 文字列 2009年10月9日 7ADD2116 佐藤洋輔

  2. はじめに • 各自の「Java」フォルダの中に、「String」フォルダを作ってください。 • 手順: 1. 「Tera Term」を起動 2. 「cd Java」と入力 3. 「mkdir String」と入力 4. 「cd String」と入力

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

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

  5. 2. 文字列の比較(1) • 数値の場合は「a == b」のように表記し比較するが、文字列の場合はそうはいかない。 • そこで比較用のメソッド「equals()」を使う。   例)a.equals(b)     文字列aとbが等しいなら true

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

  7. 演習①(テキストの演習2) • Equal.javaを(equalsを用いて)書き換え、以下のような結果になるEqual2.javaを作りなさい。

  8. 演習① 解答例 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)); } }

  9. 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番目までの部分文字列を求める。

  10. 3. 文字列の操作(2) • 「情報メディア」という文字列があったとして、これを「substring」で指定したときと「indexOf」で指定したときとでは示している位置が異なる。 a.substring(0, 4)・・・出力結果は「情報メデ」 0→ 1→ 2→ 4→ 5→ 6→ 3→ │情│報│メ│デ│ィ│ア│ ←0 ←1 ←2 ←3 ←4 ←5 a.indexOf(デ)・・・出力結果は「3」

  11. 演習②(1)(テキストの演習3) 文字列 “259-1292神奈川県平塚市北金目1117”について • 1. 何文字あるか数えよ。 • 2. 3文字目を表示せよ。 • 3. 郵便番号だけを表示せよ。 • 4. 県名だけを表示せよ。 • 5. 県名だけを除いて表示せよ。

  12. 演習②(2)

  13. 演習② 解答例 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)); } }

  14. 4. 文字列の走査(1) • charAtを使うと文字列を一文字づつ分解することが出来る。  例)s="abc"を s.charAt(0) + s.charAt(1) + s.charAt(2)  と書くと“abc” が表示される。

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

  16. 演習③(テキストの演習4) • Forwardを修正し、入力文字を逆順にするReverse.javaを書きなさい。

  17. 演習③ 解答例 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(); } }

  18. 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);

  19. 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}の配列である。

  20. 宿題① • テキストの宿題3 • 入力した単語を以下のように表示する「Display.java」を作りなさい。 出力結果例) kiknkiknkiknkiknkiknkikn kikn kiknkiknkiknkikn kikn kiknkikn kiknkikn kiknkikn kiknkiknkikn kiknkiknkikn kiknkiknkikn kiknkiknkikn kiknkikn kiknkikn kiknkikn kikn kiknkiknkiknkikn kikn kiknkiknkiknkiknkiknkikn 実行例) $ java Display kikn

  21. 宿題②(オリジナル) • 任意の文字列を入力し、そこに「moji」という文字列があった場合は「true」を表示し、無かった場合は「false」を表示する「Moji.java」を作りなさい。 実行例) $ java Moji abcdefgmojihij 出力結果例) true

  22. 宿題③(オリジナル) • 下記の配列を小さい順に表示する「Hairetsu.java」を作りなさい。 • ただし、必ずfor文とif文を使うこと。 { 12, 67, 6, 29, 77, 41 } 出力結果例) 6 12 29 41 67 77 実行例) $ java Hairetsu

More Related