ホームページ作成の小技-BreathTake-

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--------(--) --:-- スポンサー広告 編集 |

メニューバーとタイトルの画像の同時変更(JavaScrip)

①<head></head>内に書くスクリプト
<SCRIPT language=JavaScript>
<!--
function changeIMG(img_name){
 var img_name;
 var ch_img;
 ch_img = img_name;
 document.imgchange.src=ch_img;
 return ch_img;
}
//-->
</SCRIPT>

②変更用画像の設定(タイトルの画像等)
<img src="images/photo1.jpg"  name="imgchange" >

3メニューバーの設定
<ul>
<li><a href="#"><img src="./images/menu1.jpg" onMouseOver="changeIMG('./images/photo1.jpg');this.src='./images/menu1_on.jpg'" onmouseout="this.src='./images/menu1.jpg'" border="0"></a></li>
<li><a href="#"><img src="./images/menu2.jpg" onMouseOver="changeIMG('./images/photo2.jpg');this.src='./images/menu2_on.jpg'" onmouseout="this.src='./images/menu2.jpg'" border="0"></a></li>
<li><a href="#"><img src="./images/menu3.jpg" onMouseOver="changeIMG('./images/photo3.jpg');this.src='./images/menu3_on.jpg'" onmouseout="this.src='./images/menu3.jpg'" border="0"></a></li>
<li><a href="#"><img src="./images/menu4.jpg" onMouseOver="changeIMG('./images/photo5.jpg');this.src='./images/menu4_on.jpg'" onmouseout="this.src='./images/menu4.jpg'" border="0"></a></li>
</ul>

■メニューバーのメニューにカーソルを持ってくると、img src="~"で設定されたメニュー画像が、this.src='~'で設定した画像に変更されます。
■同時に、<img src="images/photo1.jpg"  name="~" >で設定した画像が、changeIMG('~')で指定した画像に変更されます。
■カーソルを移動させると、メニュー画像は、monmouseout="this.src='~'"で指定した画像に変更されます。

スポンサーサイト

JAVA ガベージコレクション

■ガベージコレクション

i-mode javaにはメモリを操作する機能がない。
しかし、プログラムで不要なメモリの領域を開放する事が出来る。
不要なメモリの占有を開放することをガベージコレクションと言う。
以下の命令で不要なメモリの領域を開放する事が出来る。
System.gc()
命令を実行した時点で、どこからも参照されていないクラスのインスタンスや配列の実体を開放する。
しかし、インスタンスはヒープ領域に存在し続ける。
参照変数に「null」を代入することでその参照変数に格納されたアドレスを初期化することが出来る。
Sample myClass1;
myClass1=new Sample();
myClass1=null;
ただし、インスタンスはメモリに残ったままになる。
ヒープ領域のインスタンスを開放したい場合は「System.gc()」を実行する。

■値渡し・参照渡し

■値渡し
メソッドに渡したデータとメソッドで引数として受け取ったデータの実体は別物として扱われる。
処理の流れは、メソッドを呼び出して引数に変数を渡すとその変数の値を参照する。そして、参照した値を引数に代入する。
「任意の変数a=任意の変数b」と変数に変数を代入したのと同じ。
この様な引数の渡し方を「値渡し」言う。
変数に格納されている値だけ渡すので、それをどのように操作してもメソッドの呼び出し元で使用した変数に影響はない。
■参照渡し
変数の実体を引数に渡す。
「引数に与えた変数==引数」となる。
JAVAでは、値渡しのみ有効

JAVA クラスの概要

■オブジェクト指向とは?

※現実の事象をオブジェクト(物)単位で表現
※クラス:オブジェクトの単位
  クラスは、フィールドとメソッドから構成
    フィールド:オブジェクトを構成するデータを表現するもの
    メソッド:オブジェクトの動作(動き)を表現するもの


■Menseki.java
import com.nttdocomo.ui.*;
public class Menseki{ //クラス名
  
  public int x; //フィールド(属性)
  public int y; //フィールド(属性)
  
  public int Sikaku(){//メソッド(動作) int型のデータが戻り値
    int Ans;//メソッド(動作)
    Ans = x * y;//メソッド(動作)
    return Ans;//メソッド(動作)
  }
  
  public int Sankaku(){//メソッド(動作) int型のデータが戻り値
    int Ans;//メソッド(動作)
    Ans =( x * y)/2;//メソッド(動作)
    return Ans;//メソッド(動作)
  }
}


■ClassSample1.java
import com.nttdocomo.ui.*;
public class ClassSample1 extends IApplication {
  
  public void start(){
    
    int Kekka1, Kekka2;
    
    //「Menseki」クラスで使う「Zukei」と言うクラス変数を宣言
    //クラス変数のことをインスタンス名と呼ぶ
    Menseki Zukei;
    
    //クラスのインスタンスを生成
    //インスタンスはメモリ(ヒープ領域)に生成されたクラスの実体
    Zukei = new Menseki();
    //MensekiクラスのインスタンスZukeiに「.」で接続
    //フィールドx,yを指定する事によりフィールドに値を代入できる
    Zukei.x=30;
    Zukei.y=20;
    
    //メソッドの操作
    Kekka1 = Zukei.Sikaku();
    Kekka2 = Zukei.Sankaku();
    
    //結果の出力
    System.out.println("フィールドxの値:"+Integer.toString(Zukei.x));
    System.out.println("フィールドyの値:"+Integer.toString(Zukei.y));
    System.out.println("変数Kekka1の値:"+Integer.toString(Kekka1));
    System.out.println("変数Kekka2の値:"+Integer.toString(Kekka2));
  }
}



■クラスの定義

public class (クラス名) {
  (フィールド)
  (メソッド)
}
※原則として、ソースファイル(拡張子javaのファイル)一つにつき、1クラスの記載しか出来ない
※クラス名とソースファイルの名前が同じでなくてはならない


■メソッドの定義


public class Menseki{ //クラス名
  
  public int x; //フィールド(属性)
  
  public int Sikaku(){//メソッド(動作) int型のデータが戻り値
    int Ans;//メソッド(動作)
    Ans = x * y;//メソッド(動作)
    return Ans;//メソッド(動作)
  }
  
}

public [データ型] [メソッド名](パラメーター){
  処理

private [データ型] [メソッド名](パラメーター){
  処理

(例)
public int Sikaku(){
  int Ans;
  Ans = x * y;
  return Ans;
}

※戻り値を持つ必要が無い場合は、[void]を記述
(例)
public void Sikaku (){
  処理
}
※戻り値が無い場合は、値が返らないので変数に代入することは出来ない。
(単独で実行する)
  //Sikaku()メソッドを実行
  Kekka1 = Zukei. Sikaku ();


■フィールドの定義


public class Menseki{ //クラス名
  
  public int x;//フィールド(属性)
  
  public int Sikaku(){//メソッド(動作) int型のデータが戻り値
    int Ans;//メソッド(動作)
    Ans = x * y;//メソッド(動作)
    return Ans;//メソッド(動作)
  }
  
}

※クラス内でメソッドのブロックの外で宣言されている値(クラスの属性とも呼ぶ)
※[publicもしくは、private][戻り値][フィールド名]
※フィールドに定数を使用する場合は、先頭に「final」を付ける。
(例) public fainal int = 値
※クラスを使う側からフィールドを利用するには、インスタンスを生成したクラス変数とフィールド名を「.」で接続して使用。


■コンストラクタ

※クラス名と同じ名前で、voidも戻り値のデータ型も指定しない特殊なメソッド。
(例) public クラス名(パラメーター){処理}
※クラスのインスタンスを生成を「変数名=new クラス名();」としている。
(例)Keisan = new Sansu();
クラス名の後の()は、何かメソッドを呼び出しているのでは無く、コンストラクタを指定している。
だから、クラスのインスタンスの生成は「変数名=new クラス名();」ではなく、「変数名=new コンストラクタ名();」が正解となる。
※コンストラクタは「必ず最初に実行される」特徴があるので、初期処理を記述するのが一般的。


public class Menseki {
  
  public int x;
  public int y;
  
  //コンストラクタ
  public Menseki (){
    x = 1;
    y = 1;
  }
  
}

引数のあるコンストラクタを呼び出すときは、new演算子で指定するコンストラクタに引数の値を指定。


public class Sansu{
  public int x;
  public int y;
  
  //コンストラクタ
  public Sansu(int sx,int sy){
    x = sx;
    y = sy;
  }
}
(例)呼び出し方
  //コンストラクタ
  //クラスのインスタンスを生成
  Zukei = new Menseki(20,30);



■カプセル化

※カプセル化は「情報の隠蔽」のことを言います。
※i-mode JAVAでカプセル化を行う、アクセス制御の修飾子「public・protected・private」。
※「public」は情報の公開、「private」が情報の隠蔽を行う。
※クラスを定義した側で外部からのデータ利用を制限し、不用意なデータがフィールドに代入されないようにする。
サンプルで使用したMensekiクラスを例にすると、フィールドx・yに値を代入する時は代入用のメソッドを介して行うのが理想。
以下は、Mensekiクラスに情報の隠蔽機能を追加したもの。
フィールドの代入・参照は各メソッド(setX, setY, getX, getY)で行っている。


public class Menseki {
  private int x;
  private int y;
  
  //代入用のメソッド
  public void setX(int sx){
    x=sx;
  }
  public void setY(int sy){
    y=sy;
  }
  //参照用のメソッド
  public int getX(){
    return x;
  }
  public int getY(){
    return y;
  }
}

※「private」で修飾するとそのフィールド・メソッドは外部からアクセスできなくなります。
※フィールドx・yを「private」にして、フィールドを直接操作しようとする命令を記述するとコンパイル時にエラーが発生してコンパイルが出来ないようになります。




JAVAプログラム見本1



【変数】
import com.nttdocomo.ui.*;
public class Sample1 extends IApplication{
  public void start(){
    //①変数の宣言
    int a;//変数aを宣言
    int b;//変数bを宣言
    int c;//変数cを宣言
    //②
    a=10;//変数aに10を代入
    b=20;//変数bに20を代入
    c=0; //変数cに0を代入
    //③
    c=a+b;//変数a,bの合計を変数cに代入
    //④出力
    System.out.println("変数aの値:"+Integer.toString(a));
    System.out.println("変数bの値:"+Integer.toString(b));
    System.out.println("変数cの値:"+Integer.toString(c));
  }
}



【変数】
import com.nttdocomo.ui.*;
public class Sample2 extends IApplication{
  public void start(){
    //①変数の宣言
    byte a=0;整数型(1byte)
    short b=1;整数型(2byte)
    int c=2;整数型(4byte)
    //long d=3L;と記述できる
    long d=3;整数型(8byte)
    char e='A';文字型(2byte)
    boolean f=true;真偽を返す(1byte)
    //②出力
    System.out.println("変数aの値:"+Integer.toString(a));
    System.out.println("変数bの値:"+Integer.toString(b));
    System.out.println("変数cの値:"+Integer.toString(c));
    System.out.println("変数dの値:"+Long.toString(d));
    System.out.println("変数eの値:"+e);
    System.out.println("変数fの値:"+f);;
  }
}



【定数】
■定数の宣言は宣言の前にfinalをつける
import com.nttdocomo.ui.*;
public class Sample3 extends IApplication{
  public void start(){
    //①
    final byte a=0;
    final short b=1;
    final int c=2;
    //long d=3L;と記述できる
    final long d=3;
    final char e='A';
    final boolean f=true;
    //②出力
    System.out.println("定数aの値:"+Integer.toString(a));
    System.out.println("定数bの値:"+Integer.toString(b));
    System.out.println("定数cの値:"+Integer.toString(c));
    System.out.println("定数dの値:"+Long.toString(d));
    System.out.println("定数eの値:"+e);
    System.out.println("定数fの値:"+f);
}
}



【データのキャスト(変換)時のエラー】
■小さいデータ型の値に大きいデータ型の値を代入するとエラーになる
import com.nttdocomo.ui.*;
public class Sample4 extends IApplication{
  public void start(){
    //①
    int a=2;
    byte b=0;
    //②小さいサイズに大きなサイズを代入
    b=a;//b=(byte)a
    //③出力
    System.out.println("変数aの値:"+Integer.toString(a));
    System.out.println("変数bの値:"+Integer.toString(b));
  }
}



【算術演算】
import com.nttdocomo.ui.*;
public class Sample5 extends IApplication{
  public void start(){
    int a=10,b=10;
      a++;
      b--;
    //加算
    System.out.println(Integer.toString(10+5));
    //減算
    System.out.println(Integer.toString(10-5));
    //乗算
    System.out.println(Integer.toString(10*5));
    //除算
    System.out.println(Integer.toString(10/5));
    //乗算した余り
    System.out.println(Integer.toString(10%5));
    //符号を反転
    System.out.println(Integer.toString(-10));
    //値に1を加える
    System.out.println(Integer.toString(a));
    //値から1を引く
    System.out.println(Integer.toString(b));
  }
}



【関係演算子】
import com.nttdocomo.ui.*;
public class Sample6 extends IApplication {
  public void start() {
    //aとbが等しければtrue、そうでなければfalse
    System.out.println(10==5);
    System.out.println(10==10);
    //aとbが等しくなければtrue、そうでなければfalse
    System.out.println(10!=5);
    System.out.println(10!=10);
    //aがbより大きければtrue、そうでなければfalse
    System.out.println(10>5);
    System.out.println(10>10);
    //aがb以上ならtrue、そうでなければfalse
    System.out.println(10>=5);
    System.out.println(10>=10);
    //aがbより小さければtrue、そうでなければfalse
    System.out.println(10<5);
    System.out.println(10<10);
    //aがb以下ならtrue、そうでなければfalse
    System.out.println(10<=5);
    System.out.println(10<=10);
  }
}



【論理演算子】
import com.nttdocomo.ui.*;
public class Sample7 extends IApplication {
  public void start() {
    int a=10,b=10;
    a++;
    b--;
    //①
    System.out.println("変数aの値は、"+Integer.toString(a)+"です。");
    System.out.println("変数aは、20以下、又は0以上?:"+(a<=20 | a>=0));
    System.out.println("変数aは、20以下、且つ0以上?:"+(a<=20 & a>=0));
    System.out.println("変数aは、20以下、又は10以上?:"+(a<=20 | a>=10));
    System.out.println("変数aは、20以下、且つ10以上?:"+(a<=20 & a>=10));
    System.out.println("変数aは、20以下?の排他的論理和:"+(!(a<=20)));
    System.out.println("変数aは、0以下?の排他的論理和:"+(!(a<=0)));
    System.out.println("20以下、又は0以上の論理否定:"+(a<=20 ^ a>=0));
    System.out.println("20以下、又は10以上の論理否定:"+(a<=20 ^ a>=10));
  }
}

結果例
    変数aの値は、11です。
    変数aは、20以下、又は0以上?:true
    変数aは、20以下、且つ0以上?:true
    変数aは、20以下、又は10以上?:true
    変数aは、20以下、且つ10以上?:true
    変数aは、20以下?の排他的論理和:false
    変数aは、0以下?の排他的論理和:true
    20以下、又は0以上の論理否定:false
    20以下、又は10以上の論理否定:false



【代入演算子】
import com.nttdocomo.ui.*;
public class Sample8 extends IApplication {
  public void start() {
    short a=2460;
    byte b=15;
    int c=0;
    c+=b&(a>>4);
    c+=((a>>8)*10);
    //条件分岐
    if((b&a)==13) c=c*-1;
    System.out.println("cの値は、"+Integer.toString(c)+"です。");
  }
}



【条件分岐 if文】
import com.nttdocomo.ui.*;
import java.util.*;
public class Sample9 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a;
    //②乱数の取得
    Random rand=new Random();
    a=(rand.nextInt()>>>1)%9;
    //③
    System.out.println("変数aの値:"+Integer.toString(a));
    if(a<=5){
      System.out.println("変数aの値は、5以下です。");
    } else {
      System.out.println("変数aの値は、5以上です。");
    }
  }
}



【条件分岐 if~else文】
import com.nttdocomo.ui.*;
import java.util.*;
public class Sample10 extends IApplication {
  public void start(){
    //①変数aを宣言
    int a;
    //②乱数の取得
    Random rand=new Random();
    a=(rand.nextInt()>>>1)%9;
    //③
    System.out.println("変数aの値:"+Integer.toString(a));
    if(a<=5){
      System.out.println("変数aの値は、5以下です。");
    } else {
      System.out.println("変数aの値は、5より大きいです。");
    }
  }
}



【条件分岐 if~elseif~else文】
import com.nttdocomo.ui.*;
import java.util.*;
public class Sample11 extends IApplication {
  public void start(){
    //①変数aを宣言
    int a;
    //②乱数の取得
    Random rand=new Random();
    a=(rand.nextInt()>>>1)%9;
    //③
    System.out.println("変数aの値:"+Integer.toString(a));
    if(a==0){
      System.out.println("変数aの値は、0です。");
    } else if(a==1){
      System.out.println("変数aの値は、1です。");
    } else if(a==2){
      System.out.println("変数aの値は、2です。");
    } else if(a==3){
      System.out.println("変数aの値は、3です。");
    } else if(a==4){
      System.out.println("変数aの値は、4です。");
    } else{
      System.out.println("変数aの値は、5以上です。");
    }
}
}



【条件分岐 if文】
import com.nttdocomo.ui.*;
public class Sample13 extends IApplication{
  public void start(){
    //①変数aを宣言
    boolean a;
    a=true;
    //②
    if(a){
      System.out.println("処理が行われます。");
    }
  }
}



【条件分岐 if~elseif~else文】
import com.nttdocomo.ui.*;
import java.util.*;
public class Sample14 extends IApplication {
  public void start(){
    //①変数aを宣言
    int a;
    //②乱数の取得
    Random rand=new Random();
    a=(rand.nextInt()>>>1)%9;
    //③
      System.out.println("変数aの値:"+Integer.toString(a));
        switch(a){
          case 0:
          System.out.println("変数aの値は、0です。");
          break;
          case 1:
          System.out.println("変数aの値は、1です。");
          break;
          case 2:
          System.out.println("変数aの値は、2です。");
          break;
          case 3:
          System.out.println("変数aの値は、3です。");
          break;
          case 4:
          System.out.println("変数aの値は、4です。");
          break;
          default:
          System.out.println("変数aの値は、5以上です。");
          break;
        }
  }
}



【条件分岐 switch文】
import com.nttdocomo.ui.*;
import java.util.*;
public class Sample15 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a;
    //② 乱数の取得
    a=3;
    //③乱数の取得
      System.out.println("変数aの値:"+Integer.toString(a));
      
      switch(a){
        case 0:
          System.out.println("変数aの値は、0です。");
          break;
        case 1:
          System.out.println("変数aの値は、1です。");
          break;
        case 2:
          System.out.println("変数aの値は、2です。");
          break;
        case 3:
          System.out.println("変数aの値は、3です。");
        case 4:
          System.out.println("変数aの値は、4です。");
        default:
          System.out.println("変数aの値は、5以上です。");
  }
}
}



【前判定繰り返し処理 while】
■処理内容を確認して合致しない場合は処理を開始する
import com.nttdocomo.ui.*;
public class Sample16 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a;
    //②
    while(a<=5) {
      System.out.println("只今の回数は"+Integer.toString(a)+"回目です");
    a++;
    }
  }
}



【後判定繰り返し処理 do~while】
■処理内容を確認しないで処理を開始し、処理終了後に処理内容と合致していれば処理終了
(最低一回は処理を行う)
import com.nttdocomo.ui.*;
public class Sample17 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a;
    //②
    do {
      System.out.println(Integer.toString(a)+"回目");
      a++;
    } while(a<=5);
  }
}



【前判定繰り返し処理 while】
■「処理するぞ」を表示しないで終了
import com.nttdocomo.ui.*;
public class Sample18 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a=6;
    //②
    while(a<=5) {
      System.out.println("処理するぞ");
      a++;
    }
    System.out.println("変数aの値:"+Integer.toString(a));
  }
}



【後判定繰り返し処理 do~while】
■「処理するぞ」を表示したのちに終了
import com.nttdocomo.ui.*;
public class Sample19 extends IApplication {
  public void start(){
    //①変数aを宣言
    int a=6;
    //②
    do {
      System.out.println("処理するぞ");
      a++;
    } while(a<=5);
    System.out.println("変数aの値:"+Integer.toString(a));
  }
}



【前判定繰り返し処理 for文】
import com.nttdocomo.ui.*;
public class Sample20 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a;
    //②
    for(a=1;a<=5;a++) {
      System.out.println(Integer.toString(a)+"回目");
    }
  }
}



【繰り返し処理 break】
break:条件に一致すれば処理を終了
import com.nttdocomo.ui.*;
public class Sample21 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a=1;
    //②
    while(a<=10) {
      if(a>5) break;
      System.out.println(Integer.toString(a)+"回目");
      a++;
    }
  }
}



【繰り返し処理 continue】
break:条件に一致すればブロックの先頭に戻る
import com.nttdocomo.ui.*;
public class Sample22 extends IApplication {
  public void start() {
    //①変数aを宣言
    int a=0;
    //②
    while(a<=10){
      a++;
      if( a % 2 == 0 ) {
        //偶数ならばブロックの先頭に戻る
        continue;
      }
      System.out.println(Integer.toString(a)+"回目");
    }
  }
}


JAVA 演算子

算術演算子

演算子演算式の記述例機能結果のデータ型
+a + b加算を行う整数型(実数型)
-a - b減算を行う整数型(実数型)
*a * b乗算を行う整数型(実数型)
/a / b除算を行う整数型(実数型)
%a % b乗算した余りを求める整数型(実数型)
--a符号を反転する整数型(実数型)
++a++または、++a値に1を加える整数型(実数型)
--a--または、--a値から1を引く整数型(実数型)



関係演算子

演算子演算式の記述例機能結果のデータ型
==a == baとbが等しければtrue、そうでなければfalseとなる。boolean型
!=a != baとbが等しくなければtrue、そうでなければfalseとなる。boolean型
>a > baがbより大きければtrue、そうでなければfalseとなる。boolean型
>=a >= baがb以上ならtrue、そうでなければfalseとなる。boolean型
<a < baがbより小さければtrue、そうでなければfalseとなる。boolean型
<=a <= baがb以下ならtrue、そうでなければfalseとなる。boolean型



論理演算子

演算子演算式の記述例機能結果のデータ型
|a | baとbの論理和を求める。boolean型
||a || baとbの論理和を効率的に求める。boolean型
&a & baとbの論理積を求める。boolean型
&&a && baとbの論理積を効率的に求める。boolean型
^a ^ baとbの排他的論理和を求める。boolean型
!! aaとbの論理否定を求める。boolean型



論理演算の種類

論理和(OR演算)「または」を表します。aまたはbがtrueならtrueを返します。
論理積(AND演算)「かつ」を表します。aかつbがtrueならtrueを返します。
排他的論理和
(XOR演算)
「両方が同じではだめ」を表します。aとbが同じでないならtrueを返します。
論理否定(NOT演算)「反対の値」を表します。aの値がfalseならtrue、trueならfalseを返します。



論理演算の概要

aの値bの値a | b(論理和)a & b(論理積)a^b(排他的論理和)!a(論理否定)
true(真)true(真)true(真)true(真)false(偽)false(偽)
true(真)false(偽)true(真)false(偽)true(真)false(偽)
false(偽)true(真)true(真)false(偽)true(真)true(真)
false(偽)false(偽)false(偽)false(偽)false(偽)false(偽)



代入演算子

演算子演算式の記述例機能
=a = baにbを代入する
+=a += ba = a + bと同じ
-=a -= ba = a - bと同じ
*=a *= ba = a * bと同じ
/=a /= ba = a / bと同じ
%=a %= ba = a % bと同じ
|=a |= ba = a | bと同じ
&=a &= ba = a & bと同じ
^=a ^= ba = a ^ bと同じ
<<=a <<= ba = a << bと同じ
=>>a =>> ba = a >> bと同じ
>>>=a >>>= ba = a >>> bと同じ



ビット演算子

演算子演算式の記述例機能
|a | baとbのビットごとの論理和を求める
%a % baとbのビットごとの論理積を求める
^a ^ baとbのビットごとの排他的論理和を求める
~~aaとbのビットごとの論理否定を求める
<<a << baとbのビットだけ左シフトする
>>a >> baとbのビットだけ算術右シフトする
>>>a >>> baとbのビットだけ論理右シフトする



その他の演算子

演算子演算式の記述例機能
+"ABC" + "DEF" 文字列を連結する
(データ型) (int)123 キャストを行う
?: a ? b : c aがtrueならbとなり、そうでなければcとなる
new new int[10] 要素数10でint型の配列を作成する
new new クラス名 クラスのインスタンスを作成する
instanceof a instanceof b Aがbのインスタンスならtrueを、そうでなければfalseを返す



優先順位

優先順位高++--
!^ -
* / %
+ -
<< >> >>>
> >= < <= == != instanceof
| & ^
|| &&
? :
優先順位低= += -= *= /=

copyright © 2011 BreathTake all rights reserved. / Template By innerlife02
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。