S-JIS[2010-10-23/2011-07-24] �ύX����
�^�v���Ƃ́A�f�[�^�x�[�X��t�@�C���ł���1�s�E1���R�[�h�̃f�[�^�̂悤�Ȃ��́B�܂蕡���̃f�[�^��1�̉�Ƃ��Ĉ�����B
�^�v�����g���āA���\�b�h�E�����畡���̒l����x�ɕԂ����Ƃ��o����̂ŁA���ɕ֗��B
|
�l���J���}���ŕ��ׂĊۊ��ʂł�����ƃ^�v���ɂȂ�B�i�����̑��̕��@�j
val t = (1, "abc", 2)
�܂��A�^�v���̑����̕ϐ����X�ɒ�`���Ċۊ��ʂň͂ނƁA���ꂼ��̕ϐ��ɑ�����Ă����B
���u�p�^�[���}�b�`���O�@�\�v�Ƃ����炵��
val (n, s, m) = t // n��1�As��"abc"�Am��2������
�^�v������X�̗v�f�����o�������o����B
val n = t._1 val s = t._2 val m = t._3
���A�����Ɉˑ�����̂ŁA���܂�g��Ȃ����������悤�ȋC������B
�Ȃ��A�^�v���̌X�̗v�f�͕ύX�s�B�i�Ȃ̂ŁAt._1���ɑ�����邱�Ƃ͏o���Ȃ��j
�^�v���̌^�́A�^�v���̗v�f�̌^���J���}���ŕ��ׂāA�S�̂����ʂň͂�ŕ\���B[2011-07-24]
(�v�f�̌^, �c)
�Ⴆ�u("abc", 123)�v�Ƃ����^�v���̌^�́u(String, Int)�v�ƂȂ�B
�܂��A�^�v�����v�f���ɉ�����Tuple1, Tuple2, �c�Ƃ����N���X������̂ŁA�uTuple2[String,
Int]�v�̗l�ɕ\�����Ƃ��o����B
�^�v�����g���ĕ����̒l��Ԃ���B
| �߂�l�̌^���^���_�ɔC���� | �߂�l�̌^������ |
|---|---|
def sample(a: Int, b: Int) = { val sum = a + b val sub = a - b (sum, sub) } |
def sample(a: Int, b: Int): (Int, Int) = { val sum = a + b val sub = a - b return (sum, sub) } |
val (p, m) = sample(11, 22) // p��33�Am��-11������
val r = sample(11, 22) val p = r._1 // 33������ val m = r._2 // -11������
�^�v���͕����̗v�f��Ԃ��̂ŁA�v�f����2�ȏ�łȂ��ƈӖ��������Ǝv���B[2010-11-28]
�������v�f����0�i�v�f���w�肵�Ȃ��j�A1���Ƃǂ��Ȃ邩�H
| �v�f�� | �� | ���l |
|---|---|---|
| 0 |
scala> () scala> val v = () v: Unit = () |
�v�f�������^�v���́AUnit�N���X�̗B��̒l�Ƃ��Ďg���Ă���B |
scala> Tuple0()
<console>:6: error: not found: value Tuple0
Tuple0()
^
|
������Tuple0�Ƃ����N���X���p�ӂ���Ă����ł͖����B | |
scala> Tuple() res0: (Unit,) = (()) |
Tuple�N���X�Ɉ������w�肵�Ȃ��ƁA�v�f����1�Œl���u()�v�ł���^�v���ɂȂ����B | |
| 1 |
scala> (1) res1: Int = 1 |
�^�v���ł͂Ȃ��āA�P�Ȃ鏬���ʂɂ��D�揇�ʂ̍������Z�����B �܂�u (2 - 1)�v�Ƃ��Ɠ����B |
scala> Tuple1(1) res1: (Int,) = (1) scala> Tuple(1) res1: (Int,) = (1) |
������Tuple1�Ƃ����N���X�͗p�ӂ���Ă���̂ŁA�����I�Ɏw�肷��Ύg����B | |
| 2 |
scala> (1,2) res2: (Int, Int) = (1,2) scala> Tuple2(1,2) res2: (Int, Int) = (1,2) scala> Tuple(1,2) res2: (Int, Int) = (1,2) scala> Pair(1,2) res2: (Int, Int) = (1,2) scala> 1 -> 2 res2: (Int, Int) = (1,2) |
�v�f����2�̏ꍇ���uPair�v�Ƃ������ʂȃN���X�i�I�u�W�F�N�g�j�Ɓu->�v�Ƃ���������������B[2010-12-29] |
| 3 |
scala> (1,2,3) res3: (Int, Int, Int) = (1,2,3) scala> Tuple3(1,2,3) res3: (Int, Int, Int) = (1,2,3) scala> Triple(1,2,3) res3: (Int, Int, Int) = (1,2,3) |
�v�f����3�̏ꍇ���uTriple�v�Ƃ������ʂȃN���X�i�I�u�W�F�N�g�j������B[2010-12-29] |
| 22 |
scala> (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) res22: (Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int , Int, Int, Int, Int, Int, Int, Int, Int, Int, Int) = (1,1,1,1,1,1 ,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) |
�@ |
| 23 |
scala> (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
<console>:6: error: value Tuple23 is not a member of package scala
(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
^
|
�ǂ����v�f��23�ȏ�̃^�v���͑ʖڂ炵���B�iScala2.8.0�j |
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@
�@