Webプログラミング研究所〜初心者・中級者Webプログラマ(CGI・Perl・PHP・Javaプログラム言語)のための支援サイト〜 「Webプログラミング研究所」TOPへ 「Webプログラミング研究所」TOPへ
 
「プログラミングサンプル集」TOPへ 「プログラミングサンプル集」TOPへ
 
目次をフレームで表示 目次をフレームで表示
 

配列

 
概要
配列は、Perl、PHP、Javaのいずれも記述方法が異なるので、注意が必要です。
慣れれば、大したこと無いのでしっかり覚えましょう!
 
Perl Perlで配列を表す場合、変数とは異なり名称の前に"@"を付加します。

サンプルソース
配列「@arr」に数値の要素を代入する場合
@arr = (1, 2, 3, 4, 5);   # 配列@arrに値を設定する
$param = $arr[3];         # 配列@arrの3番目の要素を変数$paramに代入
print $param;             #標準出力
配列に代入する各値は、カンマで区切り、丸カッコ「()」で囲みます。
配列の要素を取得する場合は、変数名の前に"@"ではなく"$"を使用します。インデックス(配列要素の順番)は[ ]で囲みます。

実行結果
4
配列の最初の要素のインデックスは"0"となります(多くのプログラム言語がそうです)。
インデックスが3であるため、変数$paramには"4"が代入されます。

サンプルソース
配列「@arr」に文字列の要素を代入する場合
@arr = ("apple", "banana", "melon", "grape", "peach");   # 配列@arrに値を設定する
$param = $arr[3];         # 配列@arrの3番目の要素を変数$paramに代入
print $param;             #標準出力

実行結果
grape
インデックスが3であるため、変数$paramには"grape"が代入されます。
 
PHP Perlで配列を表す場合、変数と同様名称の前に"$"を付加します。この点、Perlとは異なるので気をつけましょう。

サンプルソース
配列「$arr」に数値の要素を代入する場合
<?php
  $arr = array(1, 2, 3, 4, 5);  // 配列$arrに値を設定する
  $param = $arr[3];             // 配列$arrの3番目の要素を変数$paramに代入
  echo $param;                  //標準出力
?>
配列に代入する各値は、カンマで区切り、array()関数の引数にします。

実行結果
4
配列の最初の要素のインデックスは"0"となります(多くのプログラム言語がそうです)。
インデックスが3であるため、変数$paramには"4"が代入されます。

サンプルソース
配列「$arr」に文字列の要素を代入する場合
<?php
  $arr = array("apple", "banana", "melon", "grape", "peach");  // 配列$arrに値を設定する
  $param = $arr[3];             // 配列$arrの3番目の要素を変数$paramに代入
  echo $param;                  //標準出力
?>

実行結果
grape
インデックスが3であるため、変数$paramには"grape"が代入されます。

キーポイント
PHPは、変数も配列も名称の前に"$"を付加します。よって、プログラムを記述するさいにどちらであるか迷ってしまうことがあります。
そうならないために、たとえば配列には名称の前に「arr」というい文字(arrayの頭文字3文字)を付加すると良いと思います。
このような変数の型をシボル化した文字を付加する命名法を「ハンガリー記法」といいます。
(例)
変数の場合 : $param = 1;
配列の場合 : $arrParam = array(1, 2, 3, 4, 5);
 
Java Javaでは、変数や配列を使用する場合は、必ず型宣言をしなければなりません。

(例) int型配列「arr」に数値の要素を代入する場合
次のいずれの書き方でもOKです。
(1) int[] arr = {1, 2, 3, 4, 5};
(2) int arr[] = {1, 2, 3, 4, 5};
(3) int[] arr = new int[]{1, 2, 3, 4, 5};
(4) int arr[] = new int[]{1, 2, 3, 4, 5};
JavaではCやC++と違い、データ型の書き方として、(1)や(3)のように"int[] arr"という記述ができます。こう書くことにより「intの配列型」という変数の型の意味を明示することができます。
"int[] arr"はJavaの標準的な書き方であり、"int arr[]"という型は、むしろCやC++プログラマがJavaを書くために書きやすいようにするためのシンタックスシュガー(文法的に自由な書き方ができるもの)です。

サンプルソース
public class BasicArray {
  public static void main(String[] argv) {
    int[] arr = {1, 2, 3, 4, 5};   // 配列arrに値を設定する
    int param = arr[3];            // 配列arrの3番目の要素を変数paramに代入
    System.out.println(param);     //標準出力
  }
}

実行結果
4
配列の最初の要素のインデックスは"0"となります(多くのプログラム言語がそうです)。
インデックスが3であるため、変数paramには"4"が代入されます。

(例) String型配列文字列の要素を代入する場合
次のいずれの書き方でもOKです。
(1) String[] arr = {"apple", "banana", "melon", "grape", "peach"};
(2) String arr[] = {"apple", "banana", "melon", "grape", "peach"};
(3) String[] arr = new String[]{"apple", "banana", "melon", "grape", "peach"};
(4) String arr[] = new String[]{"apple", "banana", "melon", "grape", "peach"};

サンプルソース
public class BasicArray2 {
  public static void main(String[] argv) {
    String[] arr = {"apple", "banana",     "melon", "grape", "peach"};   // 配列arrに値を設定する
    String param = arr[3];         // 配列arrの3番目の要素を変数paramに代入
    System.out.println(param);     //標準出力
  }
}

実行結果
grape
インデックスが3であるため、変数paramには"grape"が代入されます。
 
NOTE
TIPS
配列にいくつかの値を設定して初期化する際、Perl、PHP、Javaの場合、配列の最後の要素の後ろにカンマを記述することができます。
この記述方法は、CやC++の場合は、エラーとなります。
ソースコードの修正を行う際に柔軟に行えるためのシンタックスシュガーです。
便利ですので、機会があれば使ってみてください (^ ^)

Perlの場合
@arr = (
  "apple",
  "banana",
  "melon", #←このカンマです。
);

PHPの場合
$arr = array(
  "apple",
  "banana",
  "melon", //←このカンマです。
);

Javaの場合
String[] arr = {
  "apple",
  "banana",
  "melon", //←このカンマです。
};
 
ご意見箱コーナー (管理者宛てメール)
このページは、あなたの参考になりましたか?

参考になった  どちらともいえない  あまり参考にならなかった

ご意見・ご感想・ご要望がありましたら、ご記入いただければ幸いです。
今後のコンテンツ作成、ページ改善等の参考にさせていただきます。

 


Webプログラマになりたい人のためのスクール・講座情報

クリエイターの皆さん!お仕事ありますよ!フェローズに!

パソコンスクールガイド
積極的な情報収集が目標実現の近道です。

就職・起業・SOHO・それとも副業? デジハリがノウハウを伝授!

就転職に強い、資格取得スキルアップ専門校ヒューマンアカデミー

CsideNet レンタルサーバー サブドメイン型 780円/月
CGI/SSI/PHP、データベース(MySQL)が利用できます。1週間の試用期間があるのがGood!!

転職・派遣・就職・アルバイトの求人情報検索支援サイト 〜 14ALL JOB SEARCH 〜
 
 
  「Webプログラミング研究所」TOPへ 「Webプログラミング研究所」TOPへ
 
「プログラミングサンプル集」TOPへ 「プログラミングサンプル集」TOPへ
 
目次をフレームフレームで表示 目次をフレームで表示

Copyright (C) 2004 - 2005 IWAMODE Project All Rights Reserved.