|
|
|
|
| �O���[�v | ���Z�q | �T�v | �� | ���� | ���� | |
|---|---|---|---|---|---|---|
| �ꎟ�� | ( ) new .[] |
�D�悷�鎮 | (1 + 2) |
�@ | �@ | |
| �V�K���� | new �^[] |
�� | ���z�� ���N���X�̃C���X�^���X���� |
|||
| �����o�[ | obj.value |
���t�B�[���h�A�N�Z�X�E���\�b�h�Ăяo�� | ||||
| �z�� | array[0] |
���z�� | ||||
| ��u�� | ++ -- | ��uinc/dec | n++ |
�� | ��u�C���N�������g�E�f�N�������g | |
| �P�����Z�q | ++ -- + - ~ !( ) |
�O�uinc/dec | ++n |
�E | �O�u�C���N�������g�E�f�N�������g | |
| ���� | +n |
�������E������ | ||||
| �r�b�g�ے� | ~n |
�r�b�g���] | ||||
| �_���ے� | !b |
true��false�ɁAfalse��true�ɂ��� | ||||
| �L���X�g | (�N���X)obj |
�@ | ||||
| �揜���Z�q | * / % | ��Z�E���Z�E��] | m * n |
�� | �@ | |
| �������Z�q | + - | ���Z�E���Z | m + n |
�� | �@ | |
| ������A�� | string + n |
�� | �������� | |||
| �V�t�g���Z�q | << >> >>> | �r�b�g�V�t�g | n << r |
�� | ���V�t�g���Z�̒��� | |
| �W���Z�q | < > <= >= instanceof |
�召��r | m < n |
�� | �@ | |
| �^��r | obj instanceof �N���X |
��instanceof | ||||
| �������Z�q | == != |
���� �s���� |
m == n |
�� | ��equals()�Ƃ̈Ⴂ | |
| �r�b�g�_�����Z�q | & | �r�b�gAND | m & n |
�� | �r�b�g�P�ʂ̘_���� | ��boolean�̏ꍇ |
| ^ | �r�b�gXOR | m ^ n |
�� | �r�b�g�P�ʂ̔r���I�_���a | ||
| | | �r�b�gOR | m | n |
�� | �r�b�g�P�ʂ̘_���a | ||
| ����AND���Z�q | && | ����AND | b1 && b2 |
�� | �@ | |
| ����OR���Z�q | || | ����OR | b1 || b2 |
�� | �@ | |
| �������Z�q | ? : | ���� | b ? m : n |
�E | �O�����Z�q | |
| ������Z�q | = *= /= %= += -= <<= >>= >>>= &= ^= |= |
��� | m = n |
�E | ������������Z�q | |
C����/C++���J���}���Z�q�́AJava�ɂ͖����B
����������ɏ�����Ă��鉉�Z�i���j�����߁E�v�Z���郉�C�u�����[
���Z�q���I�y���[�^�[�ioperator�j�A���Z�Ώہi�l�E���j���I�y�����h�ioperand�j�ƌ����B
�P�����Z�q�́A�I�y�����h��1�����Ȃ����Z�q�B�Ⴆ�u-n�v�Ƃ��un++�v�Ƃ��B
���Z�q�́A�I�y�����h��2���鉉�Z�q�B�Ⴆ�ua + b�v�Ƃ��uobj instanceof
�N���X�v�Ƃ��B
�O�����Z�q�́A�I�y�����h��3���鉉�Z�q�BJava�ł͏������Z�q�ub ? m : n�v���������B
���Z�q��g�ݍ��킹�����̂��u���v�ƌĂсA���̌v�Z���s�����Ƃ��u�]���v�ƌĂԂ��Ƃ�����B
�����i�������E�E�����j�́A���̒��ɓ���D�揇�ʂ̉��Z�q������ł���Ƃ��� �ǂ�����Ɍv�Z���邩�̏������߁B
�������̗�F�ua + b + c�v�c���Z���Z�q�u+�v�͍������Ȃ̂ŁA���������Ɍv�Z�����B���Ȃ킿�ua + b�v���s���Ă���c�����Z�����B
�E�����̗�F�ua = b = c�v�c������Z�q�u=�v�͉E�����Ȃ̂ŁA�E�������ɕ]�������B���Ȃ킿�ub = c�v����Ɏ��s����A���Ɂua =
b�v�����s�����B
�Z�p���Z�ł́A�^�̕ϊ����s���邱�Ƃ�����B[/2008-08-30]
�P�����Z�q�i������+-��!~�A�z��̃C���f�b�N�X���j�ɂ����ẮAint���Z�������^�ibyte�Echar�Eshort�j�̉��Z�́Aint�ɕϊ��i���C�h�j���O�ϊ��j����čs����B
���Z�q�ŁA�I�y�����h�̂ǂ��炩��int���傫���^�idouble�Efloat�Elong�j�̂Ƃ��A���̌^�ɕϊ�����Ă���v�Z�����B
�܂��Aint��菬�����^����ł���Aint�ɕϊ�����Ă���v�Z�����B
�Ⴆ�ubyte b�v�Ɓushort s�v�ɑ��ub + s�v�́Ab��int�Ɋg������As��int�Ɋg������Ă�����Z�����B
�܂��Aint+double�Ȃ�int��double�ɕϊ�����邵�Aint+long�Ȃ�int��long�Ɋg�������Bfloat+long�Ȃ�long��float�ɕϊ������B
�ʏ�̎Z�p���Z�ł́A�����Ȃ��Ă�������֗��B
�V�t�g���Z�i<<�E>>�E>>>�j�͓��Z�q�ł����ĒP�����Z�q�ł͂Ȃ����A�����Ȃ̂ŒP�����l���i�̑ΏۂƂȂ��Ă���B
�����������_���E�V�t�g���Z�u>>>�v�͒��ӂ�v����B
�Ⴆ�ubyte b = -1�i0xff�j�v�ɑ��� �E��1�r�b�g�V�t�g���āu0x7f�v�Ƃ������ꍇ�A�ub >>> 1�v�ł͖]���ʂɂȂ�Ȃ��B
�Ȃ��Ȃ�Ab���P�����l���i����int�Ɋg�������̂ŁA0xff��0xffffffff�ɂȂ�B�i1�o�C�g��0xff��4�o�C�g��0xffffffff�́A2�̕␔�\���Ō���ǂ����-1���Ӗ�����B����Ȃ������l�ł���j
���̏�ԂŁu>>> 1�v���s���̂ŁA���ʂ́u0x7fffffff�v�ƂȂ�B
������byte�ɃL���X�g����ƈ�ԉ���1�o�C�g�������L���ƂȂ�i0x7fffffff�j�̂ŁA���ʂ́u0xff�v�B0x7f�ɂ͂Ȃ�Ȃ��B
���������āAbyte�̂Ƃ��́u(b & 0xff) >>> 1�v�Ashort�̂Ƃ��́u(s & 0xffff) >>> 1�v�Ƃ��Ȃ���Ȃ�Ȃ��B
�i���Ȃ݂Ɂu& 0xff�v�����{����ΕK�����̐��ƂȂ�̂ŁA�u>>>�v�łȂ��u>>�v�ł��������ʂɂȂ�B���Ă��Ƃ́Abyte��short�ɑ���u>>>�v�Ȃ�ĕs�v�����c�j
Java�ł́A�]�������ʂ�ɕ]�����s���邱�Ƃ��ۏ�����B�iC����ł́A�����ˑ��i������œK���ɂ���ĈقȂ�j�Ƃ����������������j
�܂�A�����������E�̉��Z�q�ł́A���̕]�����I����Ă���E�̕]�����s���B
���̕]�����i��O�����Ƃ��ɂ���āj���S�ɏI�����Ȃ������ꍇ�A�E�̕]���͍s���Ȃ��B
int r = func1() + func2(); ������func1()�ŗ�O���N������Afunc2()�͐�Ɏ��s����Ȃ��B
���_��́Ar2=func2()���ɌĂяo���āAfunc1()+r2�Ƃ����v�Z���s���Ă����ʂ͓����ɂȂ�B
�i�Ӗ��I�ɂ͍��E�����ւ���func2()+func1()�Ƃ����̂Ɠ����j
������Java�R���p�C���[�͂����������͂��Ȃ��B�i�r���ŗ�O���N����ƌ�̂��͎̂��s����Ȃ�����A�������d�v�ƂȂ�j
���\�b�h�̈������A�������珇�ɕ]�������B
int a = 1; method(a, a = 2, a); �� method(1, 2, 2)�Ɠ���
�������܂��A���������̂Ɉˑ������v���O���~���O�͂���ׂ�����Ȃ����ǂ�(���)
�unew �N���X��()�v�ɂ���āA�N���X�̃C���X�^���X����������B
��new�̕��ʂ̎g�����inew �N���X()�j
�����������N���X�̍����inew �N���X(){ }�j
�������N���X�̃C���X�^���X���i�ϐ�.new
�N���X()�j
���z��̃C���X�^���X���inew �N���X[ ]�j
C++�ł������Ȃ��R���X�g���N�^�[�̏ꍇ�����ʂ͕s�v�Ȃ̂Łua = new Foo;�v�Ƃ����`�ŏ������Ƃ��o�������AJava�ł́unew �N���X���v�̌��ɕK�����ʂ��K�v�B[2003-07-06]
�V�t�g���Z�q�́A�����^�ɑ��Ă̂ݎg����i��������float��double�ł͎g���Ȃ��j�B
Java�ł͐����̕����̗L�����^�ł͊Ǘ����Ȃ��i��ɕ����L��Ƃ��Ĉ�����j�B
�iC�����C++�ł́uint�v�Ɂusigned int�v�Ɓuunsigned int�v������j
���̈Ⴂ�������̂̓r�b�g�E�V�t�g���Z�Ȃ̂ŁA�E�V�t�g���Z�q�ɂ͕����L��p�́u>>�v�ƕ��������p�́u>>>�v�����݂���B[2003-07-06]
�u>>�v�ł̓V�t�g�O�̕������ۑ�����邪�A�u>>>�v�ł͕ۑ����ꂸ�A�ŏ�ʃr�b�g��0������B
�i2�̕␔�\���ɂ����Ă͍ŏ�ʃr�b�g���������Ӗ�����j
�Ⴆ��-2�i0xfffffffe�j�ɑ��āu-2 >> 1�v�́u-1�i0xffffffff�j�v�ɂȂ邪�A�u-2 >>> 1�v�́u0x7fffffff�v�ɂȂ�B
������byte��short�ɑ���u>>>�v�͒��ӂ�v����B�����l�̏��i
�V�t�g���Z�q�̉E�I�y�����h�͐��̐����������Ȃ��B�Ƃ������A���̐����w�肵�ċt�����̃V�t�g�ɂȂ�����͂��Ȃ��B
�Ȃ��Ȃ�A�E�I�y�����h�ɑ��A���I�y�����h��int�̏ꍇ�́u&
0x1f�v�Along�̏ꍇ�́u& 0x3f�v���Ă���v�Z����邽�߁Bint��32bit�Along��64bit�Ȃ̂ŁA���͈̔͂���V�t�g�͖��Ӗ��A�Ƃ������f�Ȃ̂��낤���B�i64�r�b�g�ȏ�V�t�g����A���ʂ͏��0�i�����̕����t���E�V�t�g�Ȃ�-1�j������j
�܂�A�uint a�v�ɑ���ua << -1�v�́A�ua << (-1 & 0x1f)�v�Ȃ̂Łua << 31�v�Ɠ����B
instanceof�́A�I�u�W�F�N�g���Y���N���X�i���p�����Ă���j���ǂ����f���鉉�Z�q�B�Y���N���X�ł���ΐ^�itrue�j�B[2007-06-11]
interface I {}
class S {}
class A extends S implements I {}
class B {}
�̂Ƃ��A�uObject obj = new A();�v�Ƃ���ƁA�uobj instanceof A�v�͓��Rtrue�����A�uobj instanceof S�v�uobj instanceof I�v��true�B
�uObject obj = new B();�v�ł���A�uobj instanceof A�v�uS�v�uI�v�͑S��false�B
�ΏۃI�u�W�F�N�g��null�ł���Ainstanceof��false�ɂȂ�B
instanceof�́A�ȉ��̂悤�Ȏg���������邱�Ƃ������B
Object obj = �`; if (obj instanceof Type) { //�uobj instanceof Type�v��true�Ȃ�� Type t = (Type)obj; //obj��Type�̃C���X�^���X�Ȃ̂ŁAType�փL���X�g�ł��� �` }
���������Q�ƌ^�̃i���[�C���O�ϊ����\�ł��邱�Ƃ��`�F�b�N����ړI
��insntaceof�̎��s���x
���p�^�[���}�b�`���Oinstanceof [2021-03-21]
boolean���m�ɑ���r�b�g�_���a�E�_���ρi|,&,���ł�^�j�̌��ʂ́Aboolean�^�ɂȂ�B[2007-11-06]
boolean��int�ɑ���r�b�g�_���a�E�_���ς͌v�Z�s�\�i�R���p�C���G���[�j�B
�u+=�v��u*=�v���́i�P��������Z�q�u=�v�ȊO�́j������Z�q�� ����������Z�q�ƌĂԁB
����������Z�q�́A�ȉ��̂悤�ȕϊ������������ق������B
�ua += b�v�߁ua = (Type)(a + b)�v �iType�́Aa�̌^�B�܂�L���X�g�j
�u�قړ����v�Ƃ����̂́Aa�ɓ����镔�����z��Ȃǂ̌v�Z�����������ꍇ�́A���̌v�Z�͈�x�����s���Ȃ�����B�ł��ܘ_���̕����s�������ł��傤�B
�������_���E�V�t�g������Z�q�u>>>=�v�Œ��ӂ�v����B
�Ⴆ�ubyte b = -1�v�ɑ��āub >>>= 1�v�́A�ub = (byte)(b >>> 1)�v�ɓW�J���ꂽ�̂Ɠ����B���Ȃ킿�A���l���i�̉e������B
�ub = (byte)((b & 0xff) >>> 1�v���Ӑ}��������ƂȂ�B�i�܂�byte��short�ɑ���u>>>=�v���ĈӖ������c�j
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@