著者:結城 浩[ゆうき・ひろし](1963-) プログラマー。技術書ライター。
装丁:米谷テツヤ[よねたに・てつや] グラフィックデザイナー。
本文デザイン:花本浩一(麒麟三隻館)
Java言語プログラミングレッスン 第3版(上) | SBクリエイティブ
【上巻 目次】
はじめに/本書の構成/各章のコーナーについて/あなたは何をすればよいか/本書のプログラムについて/謝辞(1999年5月 武蔵野にて 結城浩) [iii-vii]
改訂第2版の刊行にあたって(2005年9月 結城浩) [viii]
第3版の刊行にあたって(2012年11月 結城浩) [viii]
CONTENTS [ix-xviii]
第0章 Java言語の見晴らし台
この章では… 002
Java言語とは何か 002
Java言語とは何か
Java開発環境(JDK)
統合開発環境(IDE)
こんな感じです 005
Java言語でのプログラム開発の流れ 006
Java言語でプログラムを書く
コンパイルを行う
実行する
デバッグする
Java実行環境 010
Java言語の学び方 012
前準備
開発ツールの入手
既存のプログラムを動かす
修正して動かす
ソースファイルを読む
ゼロからプログラムを作って動かしてみる
わからないことがあったら
第1章 Javaでこんにちは
この章では 016
例題1: Hello! を表示する Javaプログラム 016
コンバイルして実行してみよう
例題1のプログラムを読んでみよう
全体をもう一度つかんでみよう
例題2:「こんにちは。」を表示する Javaプログラム 021
コンパイルと実行
例題2のプログラムを読んでみよう
二重引用符そのものを表示するために 024
間違い探し 028
間違い探し
間違い探しの解答
この章で学んだこと 031
練習問題 031
第2章 計算をやってみよう
この章では 034
加減乗除 034
算数とJavaの加減乗除
プログラムと実行結果
減算・乗算・除算
整数の除算
複雑な数式と優先順位
同じ優先順位のときの計算順序
計算についての補足 042
オーバーフロー
剩余演算
その他の計算
この章で学んだこと 046
練習問題 046
第3章 変数と型
この章では 050
数学での変数 050
変数とは何か 051
1. 変数を作る(変数宣言)
2. 値を入れる(代入)
3. 値を見る(参照)
変数の初期化
代入演算子について
復習 058
例:計算結果の表示
例:変数を2つ宣言
例:浮動小数点数
例:文字型変数の初期化
Java言語の型 062
名前と年齢をたずねるプログラム 064
入力待ち
readLineメソッド
readerって何?
BufferedReaderって何?
Stringクラス
文字列を整数に変換する
例外処理
import
間違い探し 072
読解練習「九九練習プログラム」 074
乱数について
コメントについて
finalについて
booleanについて
showQuestionメソッドについて
try … catchについて
この章で学んだこと 080
練習問題 081
第4章 if文
この章では 084
日本語の「もしも…ならば」 084
Java言語の「if文」
日本語の「もしも…ならば…さもなくば」
Java言語の「if … else文」
降水確率と傘 090
if を使った判断
例:「if文」の連鎖
等号を入れるかどうか?
例:「または」を表現するには
「かつ」について
ド・モルガンの法則
この章で学んだこと 101
練習問題 101
第5章 switch文
この章では 106
どれですか? 106
if とswitchの多方向分岐 107
if文による多方向分岐
switch文による多方向分岐
switch文の構造
switch文の処理の流れ
いくつかの例 112
例:文字による分岐
例:break文のない例
定数について
String型をswitch文で使う
case default
この章で学んだこと 119
練習問題 120
第6章 for文
この章では 128
0から2まで表示する 129
printinを並べて繰り返す
for文を使って繰り返す
for文の構造
具体的に調べよう
間違いやすいところ
for文はらせん階段のようなもの
例:繰り返す処理を増やす
例:二重のfor文
複文を作る中カッコについて 141
変数の有効範囲(スコープ)について 142
この章で学んだこと 144
練習問題 144
第7章 while文とString型
この章では 148
while文 148
while文の構造
while文を読む
whileの例:List 7-1 の解読
whileの例:List 7-1 を追っていく
for文とwhile文の比較
さまざまな while文の例 154
例:入力をそのまま出力にコピーする
例:複雑な条件式
例:大文字を小文字に変換する
例:句読点変換
Stringオブジェクトの管理とガーベッジコレクション
オブジェクトを「参照」するとは
例:文字列の検索
文字列の一致は equalsで
間違い探し 174
間違い探し
間違い探しの解答
do-while文 175
break文とcontinue 176
break文で繰り返しの中断
二重ループとラベル付きbreak文
switch文中のbreak文
continue
if文とwhile文の考察
この章で学んだこと 181
練習問題 182
第8章 メソッド
この章では.… 188
メソッド 188
メソッド・引数・戻り値
まずは半額のサービスから
Java言語で書いてみよう
List 8-2を読んでみよう
図を見て考えよう
どうしてメソッドにするの?
メソッドのさまざまな例 196
例:戻り値がないメソッド
例:引数の数を変える
この章で学んだこと 202
練習問題 202
第9章 配列
この章では… 208
変数から配列へ 208
変数の復習
配列を使ったプログラム
配列用の変数を宣言する
配列を確保する
配列の要素に代入する
配列の要素を参照する
配列の要素と普通の変数の比較
例:添字を変数にする 216
例:配列の長さを表すlength 219
例:配列の初期化 222
例:二次元配列 223
二次元配列の要素数は一定でなくてもよい
コマンドラインの引数 228
配列の要素を巡る拡張for文
例:ちょっと先取りしてオブジェクト指向 230
配列のためのメモリを確保するとは 233
配列のまとめに代えて:繰り返しを見抜く 234
この章で学んだこと 236
練習問題 237
第10章 オブジェクト指向へ向けて
この章では… 246
クラスとインスタンス 246
配列からクラス宣言へ
クラスからインスタンスへ
コンストラクタとメソッド 250
初期化を行うコンストラクタとthis
toStringメソッド
オブジェクト指向というもの 256
用語と具体的なイメージ
オブジェクト指向とは何か
科目クラスの利用 259
科目の平均を求めるクラス
インスタンスメソッドとクラスメソッド
インスタンスの配列の初期化
変数とフィールド
インスタンスの配列の利用
この章で学んだこと 263
練習問題 264
下巻へのご招待 Java言語を学んでいる読者のみなさんへ 268
付録
付録A. 練習問題の解答 270
付録B. アプレット 315
付録C. よく起こるエラーとその対処法 330
付録D. 演算子と優先順位 343
付録E. 数の表記法 346
付録F. 予約語一覧 351
付録G. \で始まる特殊な文字列(エスケープシーケンス)一覧 354
付録H. 基本型の一覧 356
付録I. JDK ツールのインストールと基本的な使い方 357
付録J. printf の書式 363
付録K. 関連URL と参考文献 371
索引 [373-379]
著作一覧 [381]
【Tables】
Table 0-1 Java言語の年表
Table 0-2 重要な略語
Table 1-1 で始まる特殊な文字列 (エスケープシーケンス)
Table 1-2 似ていて間違えやすい記号
Table 2-1 整数で表すことのできる範囲
Table 3-1 基本型の一覧
Table 3-2 ラッパークラスの例
Table 4-1 Java言語の比較演算子
Table 6-1 List 6-4で使われている二重のfor文の比較
Table 7-1 String クラスにあるメソッド(一部)
Table 7-2 文字列検索関連の String クラスのメソッド
Table 9-1 配列の要素と変数の比較
Table A9-1 さまざまな java.lang.Math.max
Table D-1 Javaの演算子とその優先順位
Table E-1 数の正負
Table F-1 Java の予約語一覧
Table F-2 意味が定まっている語(リテラル)
Table G-1 ¥で始まる特殊な文字列(エスケープシーケンス)
Table G-2 エスケープシーケンスを使った文字列の表記例
Table G-3 エスケープシーケンスを使った文字の表記例
Table H-1 基本型(整数型)
Table H-2 基本型(その他)
Table J-1 書式指定文字列中のフラグ
Table J-2 変換文字列
Table J-3 変換文字列(日付)
Table J-4 変換文字列(時刻)
Table J-5 変換文字列(日時)